【发布时间】:2010-03-24 18:16:15
【问题描述】:
我面临一个非常奇怪的问题,即同一个循环在改变 BUFFER 值时不断给我不同的输出
final int BUFFER = 100;
char[] charArr = new char[BUFFER];
StringBuffer objStringBuffer = new StringBuffer();
while (objBufferedReader.read(charArr, 0,BUFFER) != -1) {
objStringBuffer.append(charArr);
}
objFileWriter.write(objStringBuffer.toString());
当我将 BUFFER 大小更改为 500 时,它会给我一个 7 kb 的文件,当我将 BUFFER 大小更改为 100000 时,它会给出一个 400 kb 的文件,其中的内容一次又一次地重复。请帮忙。我应该怎么做才能防止这种情况发生?
【问题讨论】:
-
BUFFER是用于指定缓冲区 大小 的变量的误导性名称。你应该叫它BUFFER_SIZE。 -
您的代码似乎不完整。 objBufferedReader 是如何定义的?
标签: java