Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/31.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何在出现特殊字符星号之前读取文本文件_C#_Asp.net_Filestream - Fatal编程技术网

C# 如何在出现特殊字符星号之前读取文本文件

C# 如何在出现特殊字符星号之前读取文本文件,c#,asp.net,filestream,C#,Asp.net,Filestream,我试图在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

我试图在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
string file=“TextFile1.txt”;
列表行=新列表();
使用(StreamReader r=新StreamReader(f))
{
弦线;
而((line=r.ReadLine())!=null&&!line.StartsWith(“*”)
{
行。添加(行);
}
}

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

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

有几种方法可以解决这个问题。你试过什么?你对尝试有何想法?试着根据你的需要调整以下内容:我想一开始就停下来*occarance@Popeye我只是想跳过*之间的几行,然后继续下一行
string[] yourFileContents = File.ReadAllLines(filePath);
List<string> contentsWithoutAsterix = 
    yourFileContents.Where(line => line.First() != '*').ToList();
List<string> contentsWithoutAsterix =
         yourFileContents.TakeWhile(line => line.First() != '*').ToList();