Java多部分文件到blob,然后返回到映像,包含大量隨機(jī)字符

我從一個(gè)jsp接收一個(gè)圖像,轉(zhuǎn)換成一個(gè)字節(jié),然后blob并將其保存在我的數(shù)據(jù)庫(kù)中,在另一個(gè)頁(yè)面上檢索它,當(dāng)檢索圖像時(shí),我得到以下字符串。

'x*??{[?Y?>YE *?????_/???????~%?+y?`??uH????#??\t?????|B??k?-??Z4V?U7?F???m+(?? ? I??pq^?Q???????18?R???-???>0~?sXxCI?;[;t???9?fBX?Bp?A??^M?k? ??G?S?u???????r?U&?w*??8????`??> Y?2?????1?j$??\??DR[??t0? pps?_Ex? ???_o?*?? xV)?6D8?$??!?9??~???N?`???}W?s?gNUf?Mn>?s?3?r?3M???X???Q????N!pr~?W????Mjq5??????2m???8????x??V?????????[???"??*,I?/@s?V?d?B?/?Vb?&R?n|?>??2????)?r??1??%7?Q??^f?R?C?????mvm??%6?K?p??;O?Z?&?????u?????\???R"ZOex???VkE???????_??????K?M@=??o?Z[?[hb?H?V????

我已經(jīng)在這里手動(dòng)減少了。這是我做的標(biāo)簽。

     <img src="data:image/jpeg;base64,${img}" width="100" height="100"></img>

我不太確定這里出了什么問(wèn)題,這里是我把文件,并把它變成一個(gè)字節(jié)[],然后是一個(gè)blob。

    byte[] byteData = file.getBytes();
    Blob blobs = new SerialBlob(byteData); 

然后我把它轉(zhuǎn)換成base64字符串。

    String base64DataString = new String(byteData , "UTF-8");
    System.out.println(base64DataString);
    model.addAttribute("img", base64DataString);

如果有人知道如何把這個(gè)字符串轉(zhuǎn)換成一個(gè)普通的base64字符串,可以用來(lái)復(fù)制一個(gè)圖像,那將是非常有幫助的。吉姆

? 最佳回答:
String base64DataString = Base64.getEncoder().encodeToString(byteData);

二進(jìn)制數(shù)據(jù)永遠(yuǎn)不應(yīng)該轉(zhuǎn)換成字符串,字符串包含Unicode,主要是UTF-16個(gè)字符,每個(gè)字節(jié)花費(fèi)2個(gè)字節(jié)(一個(gè)字符),轉(zhuǎn)換需要時(shí)間,可能會(huì)出錯(cuò)。

主站蜘蛛池模板: 国产一区二区三区在线观看免费| 一区一区三区产品乱码| 男插女高潮一区二区| 韩国福利视频一区二区| 久久国产精品一区二区| 精品国产一区二区三区香蕉事 | 一区二区不卡视频在线观看 | 亚洲视频一区二区三区四区| 区三区激情福利综合中文字幕在线一区亚洲视频1 | 日韩美一区二区三区| 久久婷婷色一区二区三区| 一区二区三区视频在线播放| 精品人妻少妇一区二区三区不卡 | 国产怡春院无码一区二区| 亚洲国产精品无码久久一区二区| 免费人人潮人人爽一区二区| 亚洲欧美日韩中文字幕在线一区| 任你躁国语自产一区在| 亚洲熟女一区二区三区| 精品国产香蕉伊思人在线在线亚洲一区二区| 麻豆果冻传媒2021精品传媒一区下载| 中文字幕精品一区二区精品| 国产精品一区在线观看你懂的| 国产在线一区观看| 日韩精品一区二区三区毛片| 亚洲A∨精品一区二区三区下载| 免费播放一区二区三区| 久久久久成人精品一区二区| 亚洲AV无码一区二区三区系列 | 国产成人一区二区三区在线观看| 国产福利电影一区二区三区,免费久久久久久久精 | 亚洲AV成人一区二区三区AV| 亚洲中文字幕无码一区二区三区 | 国产乱码精品一区二区三区四川| 亚洲中文字幕乱码一区| 国产成人亚洲综合一区| 国产情侣一区二区| 在线观看一区二区三区视频| 国产一区二区福利久久| 精品一区二区三区四区电影| 国产av一区二区精品久久凹凸|