C#语言如何把txt的文件的每一行读出来(一行中有两个数,格式:2,3)把这两个数放到数组,其他的行也这样
1个回答
展开全部
//创建一个二维数组,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";
}
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[]的数组了,或者直接向数组那样调用也行
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询