【发布时间】:2010-08-08 17:58:29
【问题描述】:
寻找一种很好的方法来解析这个文本文件,使用 C# 用黄色框突出显示的值。每个部分都由我忘记突出显示的 TERM # 来描述。试过这个:
string fileName = "ATMTerminalTotals.txt";
StreamReader sr = new StreamReader(fileName);
string[] delimiter = new string[] { " " };
while (!sr.EndOfStream)
{
string[] lines = sr.ReadLine().Split(delimiter, StringSplitOptions.RemoveEmptyEntries);
foreach (string line in lines)
{
Console.WriteLine(line);
}
}
Console.ReadLine();
可以肯定地说我正在正确阅读行并删除“空白”。虽然,作为一个编程爱好者,不确定一种有效的方法来准确地“知道”我从这份报告中得到了我需要的值。有什么建议吗?
【问题讨论】:
-
编写单元测试以证明您可以合理预期遇到的情况不会违反您的假设。 (并测试当你的假设也被违反时会发生什么,只是为了好玩。)
-
不一定与解析逻辑相关,但您可能会发现 File.ReadAllLines(或 File.ReadLines,如果文件很大并且您使用的是 .NET 4.0)可能有助于摆脱所有 StreamReader混乱。
标签: c# regex text-parsing