C# WinFrom 中如何将txt内容显示到dataGridView
TXT内容如下:
baidu----123456----百度帐号
hao123----123456----hao123帐号
duowan----123456----多玩帐号
要求显示在dataGridView效果如下表格
帐号 密码 备注
baidu 123456 baidu帐号
hao123 123456 hao123帐号
duowan 123456 多玩帐号
===============
本人菜鸟,希望高手给出具体代码,最好带上注释。我好学习学习 展开
private void button1_Click(object sender, EventArgs e)
{
//建立一个打开文件的对话框
using (OpenFileDialog dlgText = new OpenFileDialog())
{
dlgText.Filter = "文本文件|*.txt";
if (dlgText.ShowDialog() == DialogResult.OK)
{
//新建一个datatable用于保存读入的数据
DataTable dt = new DataTable();
//给datatable添加三个列
dt.Columns.Add("帐号", typeof(String));
dt.Columns.Add("密码", typeof(String));
dt.Columns.Add("备注", typeof(String));
//读入文件
using (StreamReader reader = new StreamReader(dlgText.FileName, Encoding.Default))
{
//循环读取所有行
while (!reader.EndOfStream)
{
//将每行数据,用-分割成3段
string[] data = reader.ReadLine().Replace("----", "-").Split('-');
//新建一行,并将读出的数据分段,分别存入3个对应的列中
DataRow dr = dt.NewRow();
dr[0] = data[0];
dr[1] = data[1];
dr[2] = data[2];
//将这行数据加入到datatable中
dt.Rows.Add(dr);
}
}
//将datatable绑定到datagridview上显示结果
this.dataGridView1.DataSource = dt;
}
}
}
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.IO;
namespace WindowsApplication1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
StreamReader read = new StreamReader(@"d:\a.txt", Encoding.Default, false);
//创建一个DATATABLE
DataTable dt = new DataTable();
dt.Columns.Add("网址");
dt.Columns.Add("用户");
dt.Columns.Add("说明");
//循环读取行数,一行一行的读
string line = "";
while ((line = read.ReadLine()) != null)
{
string[] str = line.Split(' '); //使用空格分隔的内容
DataRow dr = dt.NewRow();
// 也可以这样写,但是如果文本后面有空格,会出错 dr.ItemArray =str ;
dr[0] = str[0];
dr[1] = str[1];
dr[2] = str[2];
dt.Rows.Add(dr);
}
this.dataGridView1.DataSource = dt;
}
}
}
经测试通过
回答不在得分,但愿问题解决。
希望和广大程序人员技术交流~~~
广告 您可能关注的内容 |