C# WinFrom 中如何将txt内容显示到dataGridView

txt内容为固定格式:帐号----密码----备注(用4个“-”分隔)

TXT内容如下:
baidu----123456----百度帐号
hao123----123456----hao123帐号
duowan----123456----多玩帐号

要求显示在dataGridView效果如下表格

帐号 密码 备注
baidu 123456 baidu帐号
hao123 123456 hao123帐号
duowan 123456 多玩帐号

===============
本人菜鸟,希望高手给出具体代码,最好带上注释。我好学习学习

第1个回答  推荐于2016-04-18

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;

                }

            }

        }

本回答被提问者采纳
第2个回答  2009-02-21
新建一个WINFORM窗体。添加一个BUTTON,一个dataGridView.然后拷贝如下代码
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;
}
}
}

经测试通过
第3个回答  2009-02-21
你可以这样做,用字符串数组存储文本框的内容,字符数组c#提供了现成的方法,可以分隔字符(具体哪个方法忘了,哈哈,你可以找找),以你的提问来看的话,用“-”作为分割符号,分割数据源,然后用ADO.NET的方法插入数据库中就可以了哈。

回答不在得分,但愿问题解决。
希望和广大程序人员技术交流~~~

C#中如何将TEXT文本中的内容存入DataGridView的指定位置
加入制定位置直接赋值就好了,DataGridView.Rows[][].=xx。大概这样子,第二个问题,你加入一条后,刷新一下,自然就会排在下面,如果不行的话,你可以查询出来时,根据时间的小到大排序。DataGridView中存放的是object类型,换句话说,你可以存放任意类型的数据在这边 ...

C# 怎么实现在textbox中填写信息,在datagridview中显示并更新数据库表...
在页面上添加一个DataGridView控件,并将其DataSource属性设置为该数据集。初始化一个名为colwgap的BoundColumn,为其设置列标题为"W-GAP"和数据字段为"wgap",并将其添加到DataGridView的Columns集合中。搭建完成后,由于数据集中可能无数据,此时DataGridView不可见。在获取所有文本框(如TextBox)中的...

我想从txt中读取以下内容到datagridview中,请问C#代码应如何实现
第一,读取文本内容,下面代码为读取文本内容的方法 ;第二,构造一个DataTable 将读取的文本内容构造为DataTable的一行或多行;第三,将DataTable 作为数据源绑定到DataGridview中。\/\/\/ \/\/\/ 读写txt文件 \/\/\/ \/\/\/ 参数值:write 或 read \/\/\/ <returns><\/returns> private string WriteTime(...

C#将text档案指定范围数据放入datagridview并以表格显示
\/\/ label2.Text = "所查出的行数为:" + (dataGridView1.Rows.Count-1).ToString();

C#数据导入分割的问题,导入txt文档内容,显示在datagridview中
首先要确定你的文本里换行符是什么,记事本的换行符是"\\r\\n",其他某些可能是“\\n”。确定之后把文本内容读入字符串,先把字符串按照换行符拆分成数组。string[] arr = Regex.Split(str, "\\r\\n");之后遍历数组,每个元素再用Substring拆分,一次从0开始,长度为6,一次从6开始,长度为4。

VS中C#winform,如何将添加的数据显示到datagridview中
DataTable dt = new DataTable();\/\/DataTable是DataSet里的表,DataTable的对象dt就是一个表格。 sda.Fill(dt);\/\/往dt里填充数据。 dataGridView1.DataSource = dt;\/\/把表格dt里的数据,放在dataGridView2里显示 conn.Close();

c#中如何让数据显示在dataGridView上
\/\/SqlDataReader aa = cmd.ExecuteReader();\/\/返回datareader值 \/\/DataTable aaa = new DataTable();\/\/显示在表中 \/\/aaa.Load(aa); \/\/装载数据 \/\/dataGridView1.DataSource = aaa;or \/\/DataSet ds = new DataSet(); \/\/读出数据后就和数据库断了 耗资源 \/\/SqlDataAdapter adp = new ...

如何把textbox的数据添加到datagridview中显示
你先建个实体类! 把要往里面插入的数据都先放到这个实体类里面! 再用个List集合来接受这个实体类对象! 再把datagridview的coloum里面的项一一对应到实体类里面的属性!再用datagridview.datasource=集合名就可以了~

C#点击datagridview某行就将某行显示到另一个datagridview怎么设置?
实现此功能的关键在于遍历数据并将其添加到datatable中。这可以通过使用循环和datatable的相应方法完成。然后,通过将datatable绑定到datagridview来显示数据。确保在每次点击时更新datatable以反映新添加的数据。对于使用复选框的方法,确保为每个行设置复选框。在单击按钮时,遍历gridview并检查复选框的状态。

C# 怎么把数组中的数据添加到datagridview中
mydatatable”,另一个被命名为“Mydatatable”,则用于搜索其中一个表的字符串被认为是区分大小写的。如果“mydatatable”存在而“Mydatatable”不存在,则认为该搜索字符串不区分大小写。一个DataSet可以包含数个DataTable对象,它们具有相同的TableName属性值和不同的Namespace属性值。

相似回答