C#编程:读取txt文件内容到二维数组
需积分: 44 51 浏览量
更新于2024-09-08
1
收藏 1KB TXT 举报
"这篇代码示例展示了如何使用C#从txt文本文件中读取数据,并将其存储在二维数组中。开发环境是Visual Studio。"
在C#编程中,经常需要处理从外部文件读取数据的任务,例如从txt文本文件中提取信息。这个例子中,程序通过点击按钮触发事件,然后执行一系列操作来读取txt文件的数据。
首先,`openFileDialog1.ShowDialog()`用于打开一个文件对话框,让用户选择要读取的txt文件。如果用户取消操作或选择了文件,`DialogResult.Cancel`将返回`true`,程序会退出。`FileName`变量用于存储选定文件的路径。
接下来,创建了一个`StreamReader`对象`readfile`,它从`FileName`指定的位置打开文件。`readfile.BaseStream.Seek(0,System.IO.SeekOrigin.Begin)`将文件指针移动到文件开头,以便从头开始读取。
`line_total`变量用于计算文件中的行数,`while(readfile.ReadLine()!=null)`循环遍历文件的每一行并增加`line_total`计数。这个计数器可以用于后续处理,例如显示文件总行数。
然后,将`line_total`的值赋给`textBox3.Text`,这样用户可以看到文件的行数。
为了存储数据,我们创建了一个`List<string[]>`类型的`list`。这个列表将用于保存每一行的数据,每行数据被分割成字符串数组。在循环中,`readfile.ReadLine().Split(' ')`将当前行按空格分割成多个子字符串,并存储在`line`数组中。接着,创建一个新的字符串数组`arr`,将`line`的每个元素转换为字符串(`Convert.ToString(line[i])`),并添加到`arr`中。最后,将`arr`添加到`list`中。
当所有行都处理完毕后,使用`list.ToArray()`将列表转换为二维字符串数组`shuzu`。这样,数据就被有效地保存在一个易于访问的结构中。例如,`textBox4.Text=shuzu[0][5]`这一行表示显示数组`shuzu`第一行的第六个元素(索引从0开始)。
需要注意的是,这里的代码没有进行错误处理,实际应用中可能需要添加异常处理机制,以确保在文件不存在或读取过程中出现错误时,程序能够正常运行。
总结,这段代码提供了C#从txt文件读取数据并存储在数组的基本方法,包括使用`StreamReader`读取文件、`List`动态存储数据以及将数据转换为数组等关键步骤。对于初学者来说,这是一个很好的起点,可以理解如何在C#中处理文本文件数据。
点击了解资源详情
点击了解资源详情
点击了解资源详情
2009-04-23 上传
2020-09-03 上传
2023-05-25 上传
2009-11-17 上传
2015-12-30 上传