string[] scores = File.ReadAllLines(@"text file");
string score1 = scores[0];
文本文件包含1-10的值,但它一直告诉我索引超出范围。
这是为什么?答案 0 :(得分:3)
ReadAllLines
返回一个长度为0的数组。您的文件路径错误或文件没有您期望的文件。如果您尝试打印scores
的长度并且您将发现它为0,则在您将其索引为0的行上。
通常,您应该检查长度或使用foreach或以集合长度绑定的循环,以便您可以避免这些类型的异常。但是,话虽如此,您需要遵循该路径并在此处确认文件中的内容。请记住,如果您使用相对路径,程序运行时当前工作目录可能与您预期的不同。
答案 1 :(得分:1)
使用类似的东西
string [] lines = File.ReadAllLines(" C:\ rearrange.txt"); //无论您的文件名是什么,位置
ReadAllLines不知道从
读取数据的确切位置答案 2 :(得分:1)
答案 3 :(得分:1)
如果它一直告诉你索引超出范围,可能是因为它实际上超出了范围 - 你的数组的长度为0.你确定文件的内容是你认为的那样吗?
您应该仔细阅读documentation。