我正在编写一个有JProgressBar
的Swing应用程序。情况是,我有一个包含n个文件的文件夹(n可以是1或最多400个)。我想在程序运行时更新我的进度条,我无法知道如何计算和更新进度条。现在下面是我的代码:
for (int i = 0; i < files.length; i++) {
int rowNumber = writeData(files[i], sheet, rowCount, workbook);
rowCount = rowNumber;
int percent = Math.round(((float) (i + 1) / files.length) * 100f);
setStatusText(percent);
}
我想了解一种可以随着时间的推移计算和更新进度条的方法。虽然我有2个文件或200个文件,但进度条应相应更新。
例如,如果我的目录中有2个文件,对于我处理的每个文件,进度条应更新50%,如果有200个文件,则每2个文件,进度条应更新1%。由于我不确定目录中有多少文件,我非常困惑。