請幫助理解我的Java基礎的ByteArray VS Intarray
據我所知,原始字節能夠存儲的值從-127到127 =因此,只有ASCII值可以存儲在原始字節或字節數組。 我們一般存儲圖像,音樂和原始字節或字節數組中的音頻文件作爲這些文件包含-127之間的值到127 不能Unicode值存儲在字節數組,因爲這些值可高達65536 -
爲什麼我們通常更喜歡將從文件中讀取的字節存儲到bytearray中?爲什麼不將它存入int數組中?
我在一個word文檔中有漢字。 我使用inputstream(而不是閱讀器類)來讀取doc文件並複製它。輸入流被讀入字節數組,然後從那裏寫入輸出文件。 中文字符的值大於128,那麼它們是如何存儲在字節數組中的呢?我以爲我們應該只使用讀者類(而不是INPUTSTREAM)讀取具有UNICODE字符的單詞文檔。
final String file="E:\\Users\\17496382.WUDIP\\Desktop\\chin.doc"; final String file1="E:\\Users\\17496382.WUDIP\\Desktop\\chin1.doc"; InputStream inputStream = new FileInputStream(file); OutputStream out = new FileOutputStream(file1); byte[] buffer = new byte[1024]; int bytesRead; while((bytesRead = inputStream.read(buffer))!=-1) { out.write(buffer); System.out.println(Arrays.toString(buffer)); }
真的不難發現這其中一個網絡搜索:https://en.wikipedia.org/wiki/UTF-8#Description – fabian