C#语言如何把txt的文件的每一行读出来(一行中有两个数,格式:2,3)把这两个数放到数组,其他的行也这样

如题所述

//创建一个二维数组,C#中List与正常的数组使用方法是相同的
List<List<int>> result = new List<List<int>>();
//初始化一个StreamReader对象用于输入流的读取,构造函数传入一个文件流的对象
StreamReader sr = new StreamReader(new FileStream("tmp.txt",FileMode.Open));
//循环读取一行字符串
while (true)
{
string dat = sr.ReadLine();
//如果已经读完,ReadLine方法会返回null
if (dat == null || dat.Trim() == "")
break;
//split函数将一个字符串按照给定的字符,也就是','分割为多个字符串

string[] arr = dat.Split(',');
//创建一个一维数组作为二维数组的一个元素

List<int> a = new List<int>();
//循环地将arr中的所有字符串转化为整数并且塞进数组a中

foreach(string s in arr)
{
a.Add(Convert.ToInt32(s));
}
//将数组a塞进二维数组arr中

result.Add(a);
}
//读取二维数组

for(int i = 0; i < result.Count; i++)
{
for(int j = 0; j < result[i].Count; j++)
{
textBox1.Text += result[i][j] + " ";
}
textBox1.Text += "\r\n";
}追问

你好,我是把这两个数放到一维数组里,比如有两行,1,2和3,4放到数组里的第0,1,2,3项

追答

List result = new List();
StreamReader sr = new StreamReader(new FileStream("tmp.txt",FileMode.Open));
while (true)
{
string dat = sr.ReadLine();
if (dat == null || dat.Trim() == "")
break;
string[] arr = dat.Split(',');
foreach(string s in arr)
{
result .Add(Convert.ToInt32(s));
}
}
//最后使用result.ToArray()就可以得到一个int[]的数组了,或者直接向数组那样调用也行

温馨提示:答案为网友推荐,仅供参考
相似回答