在阅读整篇文档时,我需要忽略阅读特定行。 例如,我有大量的数据,我已经使用File.ReadAllText(filePath)读取了它;我需要忽略读取一个特定的行,Say 50并且需要阅读其他行。到目前为止,我有以下代码。
string fileName = "TextFile.config";
string filePath = Path.GetDirectoryName("TextFile.config") + fileName;
string text = File.ReadAllText(filePath);
答案 0 :(得分:1)
File.ReadLines Method (String)
读取文件的行。
删除List的指定索引处的元素。
List.RemoveRange Method (Int32, Int32)
从列表中删除一系列元素。
<强>〔实施例强>
string fileName = "TextFile.config";
string filePath = Path.GetDirectoryName("TextFile.config") + fileName;
var lines = File.ReadLines(filePath).ToList();
lines.RemoveAt(49) // Remove 50th line
// or
lines.RemoveRange(49,10) // Remove 50th line + 9 more
答案 1 :(得分:1)
您可以使用ReadLines
和Where
,例如:
int[] ignoreLines = { 50 };
IEnumerable<string> relevantLines = File.ReadLines(filePath)
.Where((line, index) => !ignoreLines.Contains(index + 1));
string resultString = string.Join(Environment.NewLine, relevantLines);
答案 2 :(得分:0)
使用File.ReadAllLines
,这将为您提供数组中文件的所有行,然后您可以遍历此数组以检查您要忽略(或不忽略)的行,(使用索引)或者使用string.StartsWith / string.EndsWith