[英]Parsing text file in Windows Phone 7
我正在尝试在Windows Phone 7中解析和读取文本文件。这是文本文件的格式(实际上有44个条目):
Millbrae,37.600322,-122.386735
SFO,37.61636,-122.391027
San Bruno,37.638262,-122.416513
South SF,37.664264,-122.444043
这是我的代码:
var foo=Application.GetResourceStream(new Uri("stations.txt", UriKind.Relative));
StreamReader streamReader = new StreamReader(foo.Stream);
string x;
int k;
while ((x = streamReader.ReadLine()) != null)
{
string[] items = x.Split(',');
for (k = 0; k < 43; k++)
{
cities[k] = (items[0]);
}//for*/
}//while
for (k = 0; k < 43; k++)
{
MessageBox.Show(cities[k]);
}
最后的最后一个消息框仅用于调试-我试图确保将所有城市都读入称为city的字符串数组中。 但是,当我输出citys数组时,对于所有44个条目,我得到的只是文本文件中的最后一个值。
谁能指出我做错了什么? 我不确定如何在上一个城市中阅读每个值。 谢谢!
您在城市数组的所有44个条目中为同一城市设置了44倍。
然后,对下一行重复相同的模式,并在最后一行停止。 因此,仅用最后一个条目填充数组。
k = 0;
while ((x = streamReader.ReadLine()) != null)
{
string[] items = x.Split(',');
if( k <= 44)
{
cities[k] = (items[0]);
k++;
}
}//while
删除城市上的for循环并保持手动增量var可以解决问题。 当然,我假设将城市数组声明为
string[] cities = new string[44]();
添加了if语句以检查出界外索引。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.