目标是将数据绘制成文本文件格式。
我将其存储为数组int
中的y
和数组string
中的x
有两个文本文件x.txt
和y.txt
,每个文本文件用空格分隔。例如y
是1 2 3 4 5 6
,而x
是a b c d
。
我希望像
一样将其存储在数组中 int[] y = {1, 2, 3, 4, 5, 6};
string[] x = {"a", "b", "c", "d"};
我尝试StreamReader
...但失败了
所以我想举一个例子说明我的问题。
StreamReader sy = new StreamReader("F:/C#/graph/graph/bin/Debug/y.txt",
Encoding.Default);
string[] ty = sy.ReadToEnd().Split(' ');
Console.WriteLine(ty);
for (int i = 0; i < ty.Length; i++)
{
y[i] = Int32.Parse(ty[i]);
return;
}
答案 0 :(得分:0)
您可以尝试以下解决方案:
using(System.IO.StreamReader sr = new System.IO.StreamReader("F:/C#/graph/graph/bin/Debug/x.txt"))
{
string line;
while((line = sr.ReadLine()) != null)
{
string[] x = line.Split(' ');
}
}
using(System.IO.StreamReader sr = new System.IO.StreamReader("F:/C#/graph/graph/bin/Debug/y.txt"))
{
string line;
while((line = sr.ReadLine()) != null)
{
string[] yString = line.Split(' ');
}
int[] y = Array.ConvertAll(yString , s => int.Parse(s));
}
答案 1 :(得分:0)
似乎您早已退出循环 :
tree
查询数据(例如文件)时,我们经常使用 Linq ;如果您只想读取整个文件,则 for (int i = 0; i < ty.Length; i++)
{
y[i] = Int32.Parse(ty[i]);
return; // <- Only 1st value will be read
}
是一个过冲(输入简单的StreamReader
):
File.ReadAllText