最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

如何將字符串、字節(jié)數(shù)組轉(zhuǎn)為輸入流

 更新時(shí)間:2024年05月30日 14:55:38   作者:卜大爺  
這篇文章主要介紹了如何將字符串、字節(jié)數(shù)組轉(zhuǎn)為輸入流問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

將字符串、字節(jié)數(shù)組轉(zhuǎn)為輸入流

將字符串轉(zhuǎn)成輸入流:

String str = "budaye";
ByteArrayInputStream in = new ByteArrayInputStream(str.getBytes("UTF-8"));

ByteArrayInputStream是字節(jié)數(shù)組輸入流,它繼承于InputStream。

它包含一個(gè)內(nèi)部緩沖區(qū),該緩沖區(qū)包含從流中讀取的字節(jié)。

如果我們想要將字符串或者字節(jié)數(shù)組轉(zhuǎn)換成字符流,可以使用ByteArrayInputStream類。

輸入流,輸出流,文件,字節(jié)數(shù)組,Base64字符串互相轉(zhuǎn)換

輸入流轉(zhuǎn)換成字節(jié)數(shù)組

通過我封裝的下載服務(wù)獲取輸入流,然后使用 StreamUtils.copyToByteArray去獲取字節(jié)數(shù)組

InputStream inputStream = fileClient.downloadFile(tenantId, HivpBaseConstants.FileUpload.BUCKET_NAME_CAN, l.getUrl());
                                byte[] imgByte = StreamUtils.copyToByteArray(inputStream);

注意流只能使用一次,當(dāng)用完流之后需要關(guān)閉流。

輸入流轉(zhuǎn)換成base64編碼字符串

我們需要先轉(zhuǎn)換成字節(jié)數(shù)組然后再轉(zhuǎn)換字符串

  • 轉(zhuǎn)換字節(jié)數(shù)組另一種解決方式
  public static byte[] readInputStream(InputStream is) {
        ByteArrayOutputStream baos = new ByteArrayOutputStream();
        byte[] buffer = new byte[1024];
        int length = 0;
        try {
            while ((length = is.read(buffer)) != -1) {
                baos.write(buffer, 0, length);
            }
            baos.flush();
        } catch (IOException e) {
            logger.error("IOException", e);
        }
        byte[] data = baos.toByteArray();
        try {
            is.close();
            baos.close();
        } catch (IOException e) {
            logger.error("IOException", e);
        }
        return data;
    }
  • 字節(jié)數(shù)組轉(zhuǎn)換成Base64字符串
imageFile = Base64Utils.encodeToString(data);

輸入流轉(zhuǎn)換為文件

  //數(shù)據(jù)流轉(zhuǎn)MultipartFile文件
                                MultipartFile multipartFile = new MockMultipartFile("file", "file" +"."+ fileType, fileType, inputStream);
                                ResponseEntity<ResponseCommonDTO> recognizeResult = hcanRemoteService.originalCheck(tenantId, companyCode, employeeNumber, multipartFile);

將本地的文件轉(zhuǎn)換成輸入流

String path = "C:\\Users\\mai\\Desktop\\發(fā)票測(cè)試集合\\aaaaaaaaaa.pdf";
File file = new File(path);
InputStream ins = new FileInputStream(file);

總結(jié)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • SpringMVC中攔截器的實(shí)現(xiàn)

    SpringMVC中攔截器的實(shí)現(xiàn)

    SpringMVC 中的 Interceptor 攔截器是非常重要和相當(dāng)有用的,它的主要作用是攔截指定的用戶請(qǐng)求,并進(jìn)行相應(yīng)的預(yù)處理與后處理,這篇文章主要介紹了SpringMVC的攔截器相關(guān)知識(shí),需要的朋友可以參考下
    2022-01-01
  • Java實(shí)現(xiàn)利用廣度優(yōu)先遍歷(BFS)計(jì)算最短路徑的方法

    Java實(shí)現(xiàn)利用廣度優(yōu)先遍歷(BFS)計(jì)算最短路徑的方法

    這篇文章主要介紹了Java實(shí)現(xiàn)利用廣度優(yōu)先遍歷(BFS)計(jì)算最短路徑的方法,實(shí)例分析了廣度優(yōu)先遍歷算法的原理與使用技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下
    2015-04-04
  • shiro實(shí)現(xiàn)單點(diǎn)登錄(一個(gè)用戶同一時(shí)刻只能在一個(gè)地方登錄)

    shiro實(shí)現(xiàn)單點(diǎn)登錄(一個(gè)用戶同一時(shí)刻只能在一個(gè)地方登錄)

    這篇文章主要介紹了shiro實(shí)現(xiàn)單點(diǎn)登錄(一個(gè)用戶同一時(shí)刻只能在一個(gè)地方登錄)的相關(guān)資料,非常不錯(cuò),具有參考借鑒價(jià)值,感興趣的朋友一起學(xué)習(xí)吧
    2016-08-08
  • SpringBoot集成Tess4J實(shí)現(xiàn)OCR的示例代碼

    SpringBoot集成Tess4J實(shí)現(xiàn)OCR的示例代碼

    Tess4J是一個(gè)基于Tesseract OCR引擎的Java接口,可以用來識(shí)別圖像中的文本,說白了,就是封裝了它的API,讓Java可以直接調(diào)用,本文給大家介紹了SpringBoot集成Tess4J實(shí)現(xiàn)OCR的示例,需要的朋友可以參考下
    2024-12-12
  • SpringBoot分頁(yè)查詢功能的實(shí)現(xiàn)方法

    SpringBoot分頁(yè)查詢功能的實(shí)現(xiàn)方法

    在實(shí)際的項(xiàng)目開發(fā)過程中,分頁(yè)顯示是很常見的頁(yè)面布局,所以學(xué)習(xí)如何實(shí)現(xiàn)分頁(yè)也是必要的,下面這篇文章主要給大家介紹了關(guān)于SpringBoot分頁(yè)查詢功能的實(shí)現(xiàn)方法,需要的朋友可以參考下
    2022-06-06
  • mybatis和mybatis-plus設(shè)置值為null不起作用問題及解決

    mybatis和mybatis-plus設(shè)置值為null不起作用問題及解決

    Mybatis-Plus的FieldStrategy主要用于控制新增、更新和查詢時(shí)對(duì)空值的處理策略,通過配置不同的策略類型,可以靈活地處理實(shí)體對(duì)象的空值問題
    2025-02-02
  • SpringBoot接口冪等性4種解決方案+避坑實(shí)戰(zhàn)指南

    SpringBoot接口冪等性4種解決方案+避坑實(shí)戰(zhàn)指南

    接口冪等性,看似簡(jiǎn)單,實(shí)則關(guān)乎資金安全、用戶體驗(yàn)和系統(tǒng)穩(wěn)定性,今天,咱們就來聊聊在SpringBoot項(xiàng)目中,如何真正落地接口冪等性,避免成為“背鍋俠”,感興趣的朋友跟隨小編一起看看吧
    2025-09-09
  • 解決idea啟動(dòng)報(bào)錯(cuò)javax.imageio.IIOException的問題

    解決idea啟動(dòng)報(bào)錯(cuò)javax.imageio.IIOException的問題

    這篇文章主要介紹了idea啟動(dòng)報(bào)錯(cuò)javax.imageio.IIOException,解決打不開idea問題,本文通過圖文并茂的形式給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-09-09
  • SpringBoot 中 CommandLineRunner的作用示例詳解

    SpringBoot 中 CommandLineRunner的作用示例詳解

    SpringBoot提供的一種簡(jiǎn)單的實(shí)現(xiàn)方案就是添加一個(gè)model并實(shí)現(xiàn)CommandLineRunner接口,實(shí)現(xiàn)功能的代碼放在實(shí)現(xiàn)的run方法中,本文給大家介紹SpringBoot中CommandLineRunner的作用,感興趣的朋友一起看看吧
    2025-06-06
  • java中歸并排序和Master公式詳解

    java中歸并排序和Master公式詳解

    大家好,本篇文章主要講的是java中歸并排序和Master公式詳解,感興趣的同學(xué)趕快來看一看吧,對(duì)你有幫助的話記得收藏一下,方便下次瀏覽
    2022-01-01

最新評(píng)論

广水市| 深水埗区| 汝州市| 武川县| 泸西县| 昌平区| 卓尼县| 五台县| 邯郸县| 博湖县| 汉沽区| 和林格尔县| 京山县| 平阴县| 新平| 佛教| 富顺县| 阿克| 武强县| 凤翔县| 通化市| 财经| 莱州市| 新闻| 博客| 厦门市| 花莲县| 沿河| 金溪县| 浦北县| 宁津县| 虞城县| 平谷区| 永登县| 左权县| 通许县| 德格县| 南丹县| 铜梁县| 昭觉县| 晋江市|