您的位置:首页 > 编程语言 > C#

C#从文本文件中获取二维数组

2016-06-25 19:59 501 查看
文本文件如图:



在WPF窗口点击一个按钮,打开文件选择对话框,选择文件,调试看看ee[n1,m1]是否读到

namespace WpfApplication1
{
/// <summary>
/// MainWindow.xaml 的交互逻辑
/// </summary>
public partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();
}

/// <summary>
/// 读取一个文本文件。获取一个2维数组
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void Button_Click(object sender, RoutedEventArgs e)
{
//通过OpenFileDialog()方法,获取文件
OpenFileDialog ofd = new OpenFileDialog();
ofd.Filter = "文本文件|*.txt";
//如果没有选择文件,而是点了取消,就return
if (ofd.ShowDialog() != true)
{
return;
}
string filename = ofd.FileName;
//IEnumerable<string> lines = File.ReadAllLines(filename, Encoding.Default);
string[] lines = File.ReadAllLines(filename, Encoding.Default);
//n数组行数,m数组列数
int n = 0, m = 0;
//得到n,m
foreach (string line in lines)
{
n++;
string[] seges = line.Split('|');
int length = seges.Length;
foreach (string s in seges)
{
m++;
}
}
//声明一个数组,用来存从文件读取的数据
int[,] ee = new int[n, m/n];
//n1为行,m1为列
int n1 = 0;
foreach (string  line in lines)
{
string[] seges = line.Split('|');
int length = seges.Length;
int m1 = 0;
foreach (string  s in seges)
{
int  a = int.Parse(seges[m1]);
ee[n1,m1] = a;
m1++;
}
n1++;
}
//调试用,设个断点,看看ee[n1,m1]是否正确
Console.WriteLine("");
}
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: