1
我想显示已完成任务的百分比。但是由于任务的长度取决于数据量,所以需要从文件中读取数据,所以我不能像pb3.setValue(...)
那样对数值进行硬编码,就像我现在正在做的那样。我知道我可以使用setIntermediate(true)
来显示任务正在进行,但是有什么方法可以根据文件的大小确定确切的任务进度。如何测量任务进度并使用JProgressBar更新它
这是我试图测量的操作,其中fileArray[2]
是文本文件我通过JFileChooser进行选择。
BufferedReader br3 = new BufferedReader(new FileReader(fileArray[2]));
String line;
while ((line = br3.readLine()) != null) {
StringBuffer sb3 = new StringBuffer(br3.readLine());
progress += 1;
Thread.sleep(10);
pb3.setValue(Math.min(progress, 100));
sb3.reverse();
bwr3.write(sb3.toString());
txt3.append(sb3.toString());
}
在此先感谢您的任何帮助或建议。
你可以事先确定的行数,但你必须读取文件的两倍。或者您可以检查文件大小并根据已处理的字节数更新进度。 – qqilihq