亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

代碼在循環訪問大文件時過早終止

代碼在循環訪問大文件時過早終止

C#
天涯盡頭無女友 2022-08-20 16:13:49
我正在循環訪問一個大文件的每一行,起訴這個直接的代碼:using (var reader = new StreamReader(@"C:\SomeBigFile.txt")){    while (reader.ReadLine() != null)    {        var line = reader.ReadLine();        // some more stuff    }}在第 7000000 行左右,找到一個空行,并在該讀取器之后。ReadLine() 返回 null。因此代碼終止。但是,當我期望在文本編輯器中文件時,之后肯定會有更多的行,并且我看不到返回空行的行的問題。有沒有辦法讓上面的人真正完成對文件的讀???謝謝!
查看完整描述

1 回答

?
湖上湖

TA貢獻2003條經驗 獲得超2個贊

您正在跳過一行。這就是您丟失數據的原因。


試試這個:


using (var reader = new StreamReader(@"C:\SomeBigFile.txt"))

{

    while (!reader.EndOfStream)

    {

        var line = reader.ReadLine();



    // some more stuff

    }

}

主要是我用這個:


var filename = @"C:\SomeBigFile.txt";


foreach(var line in File.ReadLines(filename))

{

    //  ....

}

它返回一個逐行讀取文件的內容。IEnumerable<string>


查看完整回答
反對 回復 2022-08-20
  • 1 回答
  • 0 關注
  • 80 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號