国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

您的位置:首頁技術文章
文章詳情頁

java - 字節流轉成字符串之后,在通過字符串轉成字節流后的文件為什么會不一樣?

瀏覽:114日期:2024-01-05 11:01:54

問題描述

public static void main(String[] args) throws Exception {File sourceFile = new File('/home/joy/圖片/img1-lg.jpg');File tempFile = new File('/home/joy/桌面/TempFile');saveTempFile(sourceFile, tempFile);String str = byteToString(tempFile);File saveFile = new File('/home/joy/桌面/saveFile.jpg');StringTobyte(str,saveFile); } // 保存臨時文件 public static void saveTempFile(File sourceFile, File tempFile) throws Exception {FileInputStream inputStream = new FileInputStream(sourceFile);FileOutputStream fileOutputStream = new FileOutputStream(tempFile);byte[] buf = new byte[10 * 1024];int readLeng = 0;while ((readLeng = inputStream.read(buf)) != -1) { fileOutputStream.write(buf, 0, readLeng); fileOutputStream.flush();}fileOutputStream.close();inputStream.close(); } // 文件字節轉字符串 public static String byteToString(File file) throws Exception {StringBuilder returnDatas = new StringBuilder();FileInputStream fileInputStream = new FileInputStream(file);byte[] buf = new byte[10 * 1024];int readLenth = 0;while ((readLenth = fileInputStream.read(buf)) != -1) { returnDatas.append(new String(buf,0,readLenth));}fileInputStream.close();return returnDatas.toString(); } // 字符串轉文件 public static void StringTobyte(String str,File file) throws Exception {FileOutputStream fileOutputStream = new FileOutputStream(file);fileOutputStream.write(str.getBytes());fileOutputStream.close(); }

代碼大意:把一張圖片通過字節流轉成一個字符串,然后在獲取該字符串的字節后還原為文件。理解中,字符只是多帶一層編碼,還原成字節后應該還是能獲取到源文件的呀。

問題解答

回答1:

while ((readLenth = fileInputStream.read(buf)) != -1) { returnDatas.append(new String(buf,0,readLenth));}

二進制圖片文件read出來的不是合法的字符串,其中無法解析的二進制數據會被濾掉參考 javadoc 中的描述:

This method always replaces malformed-input and unmappable-character sequences with this charset’s default replacement string.

回答2:

編碼和解碼不一定是無損的。你從一個圖片文件讀出一個能無損編解碼的字節流的可能性非常小。

new String( new byte[] { 0xff } ).getBytes()=> [-17, -65, -67]回答3:

首先保證序列化,你可以用base64,才能保證轉回來沒問題

標簽: java
主站蜘蛛池模板: 国产伦久视频免费观看视频 | 波多野结衣在线不卡 | 日韩精品欧美激情国产一区 | 亚洲天堂成人在线观看 | 国产亚洲精品一区二区三区 | 中文字幕在线播放视频 | 成 人 a v免费视频 | a男人的天堂久久a毛片 | 国产香蕉国产精品偷在线观看 | 午夜毛片视频高清不卡免费 | 亚洲国产欧美在线人成精品一区二区 | 大陆孕妇孕交视频自拍 | 亚洲精品中文字幕在线 | 美女黄色毛片免费看 | 中文字幕 亚洲精品 第1页 | 精品国产96亚洲一区二区三区 | 欧美成人aa | www.久久久 | 手机在线日韩高清理论片 | 欧美大片无尺码在线观看 | 欧美午夜性春猛交 | 97成人在线视频 | 精品国产午夜肉伦伦影院 | 波多野结衣中文视频 | 欧美日韩国产亚洲一区二区三区 | 欧美精品免费线视频观看视频 | 国产一区二区三区在线观看精品 | 综合久久一区二区三区 | 美女被强行扒开双腿激情视频 | 美女国产在线观看免费观看 | 色一情 | 国产亚洲欧美精品久久久 | 久久亚洲精品成人综合 | 欧美一区二区在线视频 | 办公室紧身裙丝袜av在线 | 免费一级欧美片片线观看 | 久草免费精品视频 | 免费观看a级毛片在线播放 免费观看a级网站 | 日本三级欧美三级 | 美女视频永久黄网站免费观看国产 | chinese耄耋70老太性 |