java BufferedReader最大行数

java BufferedReader最大行数,java,Java,此代码读取的文件中有6213238行,但它只读取1244178。这个类可以读取的行有任何限制吗?或者是内存使用限制吗?以及如何使其发挥作用 编辑: 我打印了最后18行,如 BufferedReader in = new BufferedReader(new FileReader(file)); String line; int i = 0; while((line = in.readLine()) != null){ if(line.contains("Time:") == true)

此代码读取的文件中有6213238行,但它只读取1244178。这个类可以读取的行有任何限制吗?或者是内存使用限制吗?以及如何使其发挥作用

编辑:

我打印了最后18行,如

BufferedReader in = new BufferedReader(new FileReader(file));
String line;

int i = 0;
while((line = in.readLine()) != null){
    if(line.contains("Time:") == true){
        System.out.println(line);
    }
    i++;
}
System.out.println(i);
in.close();
它显示了文件中最后的18行。我不得不说这很奇怪

编辑
当我将UTF-16改为UTF-8时,文件编码出现了问题,我收到了文件中的所有行,1244178大于621323。。。你确定这些数字是正确的吗?假设你的数字是颠倒的或是别的什么,也许不是所有的行都包含字符串“Time:”?@JonSkeet是的,应该有6213238@TedHopp增量是在条件之后,所以它会计算循环中的所有行,而您是否尝试使用其他工具(如扫描仪)读取同一文件看看它是否特定于BufferedReader?如果这是一个内存问题,我不会感到惊讶,但我在文档中还没有看到任何有帮助的东西。
while((line = in.readLine()) != null){
            if(line.contains("Time:") == true){
                System.out.println(line);
            }
            if(i > 1244160)
            {
                System.out.println(line);
            }
            i++;
        }