【问题标题】:read a text file line by line逐行读取文本文件
【发布时间】:2013-08-28 21:25:53
【问题描述】:

我需要逐行从文本文件中读取数据。每行包含一个字符串或一个整数。我想使用 StreamReader 从文本文件中逐行读取,并使用 StreamWriter 将其写入二进制文件。 “写入二进制文件”部分将很容易。 “逐行读取文本文件”部分是我需要帮助的部分。

【问题讨论】:

    标签: file text binaryreader binarywriter


    【解决方案1】:

    都内置在 StreamReader 中:

    using (var sr = new StreamReader(myFile))
    {
        string line;
        while ((line = sr.ReadLine()) != null)
        {
            // line is the text line
        }
    }
    

    【讨论】:

    • 我已经尝试了您的两个建议,但我收到一条错误消息“路径中的非法字符”。我正在阅读和写作的只是纯文本。我还有什么需要做的吗?
    • 该消息意味着您的文件名有问题。尝试调试并查看您正在使用的文件名,您可能会发现一个随意的斜杠或其他一些无效字符。
    【解决方案2】:

    在c#中你可以做这样的事情。

    string loc = "idk/where/ever";
    using(var sr = new StreamReader(loc))
      using(var sw = new StreamWriter(loc+".tmp"))
        {
         string line; 
            while((line=sr.ReadLine())!=null)
               {
                  sw.WriteLine(line);
                    //edit it however you want
               }
         }
    File.Delete(loc);
    File.Move(loc+".tmp",loc);
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-05-13
      • 2020-09-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多