-1

我试图在 asp.net 中读取文件不是特定格式的文本文件,所以我只想读取该文件直到特殊字符(*)并跳过其余部分。

一般来说,它的格式是

 00000 AFCX      TY88YYY
 12366 FTTT      TY88YYY
 ** File Description
 // This is so and so Description
 ** End of Description
 12345 TYUI      TY88YYY
 45677 RERY      TY88YYY
4

2 回答 2

0
    string file = "TextFile1.txt";
    List<string> lines = new List<string>();

    using (StreamReader r = new StreamReader(f))
    {
        string line;
        while ((line = r.ReadLine()) != null && !line.StartsWith("*"))
        {
            lines.Add(line);
        }
    }
于 2013-04-25T04:35:21.137 回答
0

这将为您提供所有行的列表,但以 开头的行除外*

string[] yourFileContents = File.ReadAllLines(filePath);
List<string> contentsWithoutAsterix = 
    yourFileContents.Where(line => line.First() != '*').ToList();

PS(编辑):

如果您只想要行直到第一次出现*,请改为执行以下操作:

List<string> contentsWithoutAsterix =
         yourFileContents.TakeWhile(line => line.First() != '*').ToList();
于 2013-04-25T07:34:33.127 回答