zoukankan      html  css  js  c++  java
  • 读取txt文件赋值到DataGridView中

     

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

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

    第一步 先获取到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);

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

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

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

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

                foreach (var s in arr)
                {
                    newRow = dataTable.NewRow();
                    var farr = s.Split(new string[] { "	" }, 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[] { "
    " }, 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[] { " " }, StringSplitOptions.None); //最后一条信息是空的只有一个字段长度等于1 if (farr.Length > 2) { #region 医疗信息查询赋值字段 newRow["医疗机构编码"] = farr[0]; newRow["个人编号"] = farr[1]; newRow["门诊(住院流水号)"] = farr[2]; newRow["单据号"] = farr[3]; newRow["交易类型"] = farr[4]; newRow["医院交易流水号"] = farr[5]; newRow["中心交易流水号"] = farr[6]; newRow["医疗费总额"] = farr[7]; newRow["本次帐户支付"] = farr[8]; newRow["统筹支付金额"] = farr[9];#endregion } dataTable.Rows.Add(newRow); } dataGridView1.DataSource = dataTable; dataGridView1.AllowUserToAddRows = false;
     



  • 相关阅读:
    vue 解析二维码
    自定义组件双向数据绑定,父v-model,子value用.$emit('input', newVal)
    懒加载组件
    float双飞布局
    [转]MySQL 8.0 Public Key Retrieval is not allowed 错误的解决方法
    【转】nginx产生【413 request entity too large】错误的原因与解决方法
    [其它]三维立体图简单入门含样例
    [其它] 美图看看 黑色皮肤下载不了
    vue element 表格内容文字太长加提示
    gitee webide怎么暂存文件(吐槽,gitee的产品真是吃屎的)
  • 原文地址:https://www.cnblogs.com/ljknlb/p/7794374.html
Copyright © 2011-2022 走看看