ilovemilklcc 2021-06-08 15:08 采纳率: 100%
浏览 62
已采纳

StreamReader.ReadLine()返回为什么不一样?

方法一:

using (StreamReader srr = new StreamReader(@"D:\Users\Desktop\Mytest.txt"))//文件内容:三个字        
                                                                     //符串,每个字符串占一行
            {
                string xx = string.Empty;
                while ((xx=srr.ReadLine())!=null)
                {
                    Console.WriteLine(xx);
                } 
            }

//返回:
//ni
//chou
//sha

方法二:

          

using (StreamReader srr = new StreamReader(@"D:\Users\Desktop\Mytest.txt"))//文件内容三个字 
                                                                           //符串,每个占一行
            {
                while ( srr.ReadLine() != null)
                {
                    string str = srr.ReadLine();
                    Console.WriteLine(str);
                }
            }

//返回:
//chou
//
//        (这里还多了两个空白行)

同一个TXT文件,返回不一样,为啥呢?

  • 写回答

3条回答 默认 最新

  • CSDN专家-showbo 2021-06-08 15:45
    关注

    第二组代码读取偶数行输出,奇数行的并没有输出,因为只是读取,没有Write。

    相当于一次while就读取了2行,没有第四行,返回null,输出一个空行,最后一个空行是光标所在位置

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?