gpt4 book ai didi

c# - 尝试使用 StreamReader 从文本文件读取数据时不断收到 "Input string not in correct format"

转载 作者:太空宇宙 更新时间:2023-11-03 22:46:22 38 4
gpt4 key购买 nike

当我仍然分别使用 double.parse 或 int.parse 代替 ConvertToDoubleConvertToInt32 时,我遇到了错误。这是代码:

         ArrayList Webpages = new ArrayList();
String FileName = "Medium.txt";
StreamReader newSR = new StreamReader(FileName);
while (!newSR.EndOfStream)
{
string[] data = (newSR.ReadLine()).Split(',');
Webpage newEntry = new Webpage();
newEntry.size = Convert.ToDouble(data[0]);
newEntry.visitCount = Convert.ToInt32(data[1]);
newEntry.name = data[2];
Webpages.Add(newEntry);
}

和文本文件:

5.26,46,WebPage1
7.44,76,WebPage2
8.35,42,WebPage3
46.2,9,WebPage4
12.44,124,WebPage5
10.88,99,WebPage6
10.66,984,WebPage7

这是我的错误信息:

An unhandled exception of type 'System.FormatException' occurred in mscorlib.dll

附加信息:输入字符串的格式不正确。我收到以下行的错误消息:newEntry.size = Convert.ToDouble(data[0])

最佳答案

计算机文化会影响您的分隔符类型。在这种情况下,如果 delimeter 是 .,您可以添加 InvariantCulture 选项。

    newEntry.size = Convert.ToDouble(data[0], CultureInfo.InvariantCulture);

如果有空行,文件末尾也可能导致错误。这种方式可以更安全。

 while (!newSR.EndOfStream)
{
string line = newSR.ReadLine();
if(string.IsNullOrEmpty(line)
break;
string[] data = (line).Split(',');
............

关于c# - 尝试使用 StreamReader 从文本文件读取数据时不断收到 "Input string not in correct format",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49706038/

38 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com