当前位置:编程学习 > JAVA >>

LineNumberReader为什么只读取基数行,求解答

--------------------编程问答-------------------- 判断的时候读了一行  打印的时候又读了一行 打印的时候 改成  system.out.pringln(line); --------------------编程问答-------------------- 你打印的是基数行的序号和偶数行的内容吧
一次循环你调用了2次readLine --------------------编程问答--------------------
引用 1 楼 oOrayOo 的回复:
判断的时候读了一行  打印的时候又读了一行 打印的时候 改成  system.out.pringln(line);

+1 --------------------编程问答-------------------- 哦确实,那我如何判断整个文本读完了呢?而不会出现这种问题? --------------------编程问答-------------------- 还有一个问题就是fileRead.setLineNumber(1),设置了读取的行号,为什么记下来fileRead.readLine()还是按顺序读取,而不是按照设置的读呢? --------------------编程问答--------------------
引用 4 楼 heisedalihua 的回复:
哦确实,那我如何判断整个文本读完了呢?而不会出现这种问题?


这个问题自己问的太二了,都去到了,基础不扎实啊 --------------------编程问答--------------------
引用 5 楼 heisedalihua 的回复:
还有一个问题就是fileRead.setLineNumber(1),设置了读取的行号,为什么记下来fileRead.readLine()还是按顺序读取,而不是按照设置的读呢?

这个看看源码就知道了
LineNumberReader extends BufferedReader 

public String readLine() throws IOException {
synchronized (lock) {
    String l = super.readLine(skipLF);
            skipLF = false;
    if (l != null)
lineNumber++;
    return l;
}
    }
这里的 lineNumber 只是个标记位,读取的时候还是调用父类的readLine方法即读取一行 --------------------编程问答--------------------
引用 1 楼 oOrayOo 的回复:
判断的时候读了一行  打印的时候又读了一行 打印的时候 改成  system.out.pringln(line);
+1
补充:Java ,  Java SE
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,