我的字节数组长度不等于文件.txt文件大小

时间:2016-03-05 20:49:50

标签: java byte reader

所以基本上我要做的是让JProgressBar从0-100%开始,其中100%是一个包含9999行单词的完全读取的.txt文件。

我试图通过将分段为字节的巨大字符串存储到字节数组中并使用字节数组的长度更新JPBar来实现此目的。

令我惊讶的是,JProgressBar停留在91%。后来我决定打印出这些值,并意识到文件长度比字节数组大约大10000。

有人可以向我解释为什么会出现这种情况,我怎么能正确地做到这一点?我意识到我很可能错过了关于阅读和计算字符的概念。代码段如下所示。

谢谢!

.dic/.aff

1 个答案:

答案 0 :(得分:2)

额外的文件内容很可能是Windows风格的行结尾的另一部分。 Windows上文件中的标准行结尾为\r\n,但您的内存中字符串仅包含\n。这将累积每行结尾1个字符的差异,并且9999行的次数与您报告的差异相匹配。