先查看txt是每条信息之间是通过什么分割,我是通过换行符(\n)分割的,

然后再看每一条信息中字段是通过什么分割,我的字段是通过 tab键(\t)分割。

第一步 先获取到txt文件的路径:

            //获取绝对路径
var path = "C:/Users/Ljk/Desktop/asdasd/1238191.txt";
var con = System.IO.File.ReadAllText(path, Encoding.Default);
//获取相对路径
var con = System.IO.File.ReadAllText(System.IO.Directory.GetCurrentDirectory() + "//a.txt", Encoding.Default);

第二步 通过(\n)截取分割成一条条信息:


         var arr = con.Split(new string[] { "\n" }, StringSplitOptions.None);

把所分离的信息放在一个string类型的数组里。

第三步 循环遍历这个string数组通过(\t)截取分割获取字段值:

            foreach (var s in arr)
{
newRow = dataTable.NewRow();
var farr = s.Split(new string[] { "\t" }, StringSplitOptions.None);
//farrj就是获得到的字段值的string数组
}

第四步 我为要显示在DataGridView中,创建了一个dataTable来存放字段名称,和值。

下面是全部完整的代码:
            //获取绝对路径
var path = "C:/Users/Ljk/Desktop/a/a.txt";
var con = System.IO.File.ReadAllText(path, Encoding.Default);
//获取相对路径
//var con = System.IO .File.ReadAllText(System.IO.Directory.GetCurrentDirectory() + "//a.txt", Encoding.Default);
var arr = con.Split(new string[] { "\n" }, StringSplitOptions.None);
DataTable dataTable = new DataTable();
#region 医疗信息查询返回字段
var dc = dataTable.Columns.Add("医疗机构编码", Type.GetType("System.String"));
dc = dataTable.Columns.Add("个人编号", Type.GetType("System.String"));
dc = dataTable.Columns.Add("门诊(住院流水号)", Type.GetType("System.String"));
dc = dataTable.Columns.Add("单据号", Type.GetType("System.String"));
dc = dataTable.Columns.Add("交易类型", Type.GetType("System.String"));
dc = dataTable.Columns.Add("医院交易流水号", Type.GetType("System.String"));
dc = dataTable.Columns.Add("中心交易流水号", Type.GetType("System.String"));
dc = dataTable.Columns.Add("医疗费总额", Type.GetType("System.String"));
dc = dataTable.Columns.Add("本次帐户支付", Type.GetType("System.String"));
dc = dataTable.Columns.Add("统筹支付金额", Type.GetType("System.String"));
#endregion
DataRow newRow = null;
foreach (var s in arr)
{
newRow = dataTable.NewRow(); var farr = s.Split(new string[] { "\t" }, StringSplitOptions.None);
//最后一条信息是空的只有一个字段长度等于1
if (farr.Length > )
{
#region 医疗信息查询赋值字段
newRow["医疗机构编码"] = farr[];
newRow["个人编号"] = farr[];
newRow["门诊(住院流水号)"] = farr[];
newRow["单据号"] = farr[];
newRow["交易类型"] = farr[];
newRow["医院交易流水号"] = farr[];
newRow["中心交易流水号"] = farr[];
newRow["医疗费总额"] = farr[];
newRow["本次帐户支付"] = farr[];
newRow["统筹支付金额"] = farr[];#endregion
}
dataTable.Rows.Add(newRow);
}
dataGridView1.DataSource = dataTable;
dataGridView1.AllowUserToAddRows = false;
 


读取txt文件赋值到DataGridView中的更多相关文章

  1. winform 读取TXT文件 放在Label中 分类: WinForm 2014-07-31 09:56 310人阅读 评论(0) 收藏

    <span style="font-family: Arial, Helvetica, sans-serif;">#region 读取TXT 文件,放到Label中&l ...

  2. Java中读取txt文件中中文字符时,出现乱码的解决办法

    这是我写的一个Java课程作业时,遇到的问题. 问题描述: 我要实现的就是将txt文件中的内容按一定格式读取出来后,存放在相应的数组. 我刚开始运行时发现,英文可以实现,但是中文字符就是各种乱码. 最 ...

  3. Flex读取txt文件中的内容(三)

    Flex读取txt文件中的内容 1.设计源码 LoadTxt.mxml: <?xml version="1.0" encoding="utf-8"?> ...

  4. Flex读取txt文件中的内容(二)

    Flex读取txt文件中的内容 自动生成的文件 LoadTxt-app.xml: <?xml version="1.0" encoding="utf-8" ...

  5. Flex读取txt文件中的内容(一)

    Flex读取txt文件中的内容 phone.txt: 13000003847 13000003848 13000003849 13000003850 13000003851 13000003852 1 ...

  6. Flex读取txt文件中的内容报错

    Flex读取txt文件中的内容 1.具体错误如下 2.错误原因 读取文件不存在 var file:File = new File(File.applicationDirectory.nativePat ...

  7. java读取txt文件的2中方法---并将内容(每一行以固定的字符分割切成2段)存到map中去

    #java读取txt文件的第一种方法 /** * 方法:readTxt * 功能:读取txt文件并把txt文件的内容---每一行作为一个字符串加入到List中去 * 参数:txt文件的地址 * 返回: ...

  8. 读取txt文件加DevExpress之进度条progressBarControl

    进度条使用 主要掌握下边几个命令, //水平进度条 progressBarControlH.Properties.Minimum = 0;//1:设置最大数量,比如读取txt文件内容,先要查出行数,然 ...

  9. Javascript写入txt和读取txt文件的方法

    文章主要介绍了Javascript写入txt和读取txt文件的方法,需要的朋友可以参考下1. 写入 FileSystemObject可以将文件翻译成文件流. 第一步: 例: 复制代码 代码如下: Va ...

随机推荐

  1. node-sass 安装失败的原因及解决办法

    出处:https://segmentfault.com/a/1190000010984731 windows 上用 yarn add node-sass --dev 也可以安装上.

  2. yii 分页查询

    控制器 <?php namespace backend\controllers; use app\models\Comment; use app\models\Commentstatus; us ...

  3. mysql exists及not exists的使用

    对exists及not exists的使用根据下面的示例进行解释 如sql: select sname from student where exists (select * from score)) ...

  4. 【java】函数概述

    函数也叫方法,是具有一定功能的小程序. 函数格式: 修饰符 返回值类型 函数名(参数类型 形式参数:参数类型 形式参数) { 执行语句: return 返回值; } 返回值类型:函数运行后结果的数据类 ...

  5. gtid error set test

    1.从库报主键重复(Errno: 1062)#create test data 1062create table t1 (id tinyint not null primary key,ename v ...

  6. python 中的 metaclass

    最遇到一个问题. class Meta(type): pass class M1(Meta): pass class M2(metaclass=M1): pass class Test(M2,meta ...

  7. DataGridView之编码列重绘

    实现方式如下: private void dgvRelation_RowPostPaint(object sender, DataGridViewRowPostPaintEventArgs e) { ...

  8. 学习 MySQL中导入 导出CSV

    学习 MySQL中导入 导出CSV http://blog.csdn.net/sara_yhl/article/details/6850107    速度是很快的 导出 select * from t ...

  9. Tribon/AM 数据库名字的含义

    收集在这里备用 数据库名 Tribon环境变量 内容描述 船体型线数据库 SB_CGDB 船体外型信息 型表面,船体曲线,板缝 船体结构数据库 SB_OGDB 船体模型信息 板材数据库 SB_PLDB ...

  10. 让SQL SERVER自动清理掉处于SLEEPING状态超过30分钟的进程(转)

    原文地址:http://www.itpub.net/thread-809758-1-1.html use master go ) drop procedure [dbo].[p_killspid] G ...