我正在使用zip4j在Android中提取zip文件。我想從zip文件中讀取一個文件而不保存在某個地方。我有它的工作,但它增加了文件末尾的額外字符。額外的字符是前面文件的一部分。Java:將InputStreamReader讀取爲字符串 - 添加額外字符
is = zipFile.getInputStream(fileHeader);
InputStreamReader isr = new InputStreamReader(is, "UTF-8");
ArrayList<String> list = new ArrayList<String>();
char[] buffer = new char[BUFF_SIZE];
while (isr.read(buffer, 0, buffer.length) != -1) {
String ans = new String(buffer);
//strUnzipped += new String(buffer);
strUnzipped += ans;
list.add(ans);
}
我已經使用該列表來查看額外字符的插入位置。它插在最後一行。以及來自上一行的額外文本。在某種程度上,它更像是緩衝區沒有被清除,而只是替換了緩衝區的一部分。