尝试写入某些内容以从文本文件中检索数据,但数据格式只出现在文件的一小部分内。目前,我正在使用下面的代码,通过读取和存储标题标签来查找文件中的部分,然后拆分并在列表中存储必要的数据。该文件确实有更多的标题,但现在这个是我最关心的问题。解析问题C#
当仅对数据使用简单的测试文件时,第二个if语句中的代码自行正常工作,并正确存储数据。但是,当我然后尝试在解析数据之前通读文件头时,我收到错误,指出字符串格式不正确。
if (line.StartsWith("["))
{
section = line.Trim();
MessageBox.Show(section);
}
if (section.Contains("HRData"))
{
string[] items = line.Split('\t');
int myInteger = int.Parse(items[0]);
BPMData.Add(myInteger);
BPMavg += myInteger;
myInteger = int.Parse(items[1]);
myInteger = myInteger/10;
SpeedData.Add(myInteger);
Speedavg += myInteger;
myInteger = int.Parse(items[2]);
CadenceData.Add(myInteger);
myInteger = int.Parse(items[3]);
AltitudeData.Add(myInteger);
myInteger = int.Parse(items[4]);
PowerData.Add(myInteger);
Poweravg += myInteger;
}
我正在使用MessageBox来简单地显示自己通过文件运行的程序。以下是来自相关文件的一小部分摘录。我只是不确定如何解决这个问题,尽管它可能正在盯着我。
任何建议,你可以给予很大。
[HRData]
107 129 0 -19 0 50
当你得到不正确的格式消息(我是从'Int.Parse'承担),输入行看起来像什么?您的'[HRData]'部分之后是否有格式不正确的行? – 2013-03-01 15:33:30
[使用调试器](http://www.dotnetperls.com/debugging),查看“items”的内容是什么样子的 – 2013-03-01 15:33:44
你得到的错误是什么?在哪行代码?调试器告诉你相关变量的值是什么? – millimoose 2013-03-01 15:33:52