• 将Txt文件转换成dataset[原创]


    今天工作中,遇到需要将txt文件转化到内存表dataset中,于是写了一个方法来实现:
    txt文件是特定格式的,文件中,一条记录为一行,各字段之间用“|”分割(注:最后一个字段后,有”|”)各字段依次为数据库中的相应字段。
        举例如下:
        ID号|线路编码|车站编码|运行模式|模式设置日期|模式设置时间|
          1|98|9821|06|20070913|211835|
          方法如下:

     1        /// <summary>
     2        /// 文件加载
     3         /// </summary>
     4        /// <param name="FilePath">带文件名的路径</param>
     5        /// <param name="TableName">自定义的表名</param>
     6        /// <param name="FieldsInArray">自定义的表字段</param>
     7        /// <returns>DataSet</returns>

     8        public static DataSet TextFileLoader(string FilePath, string TableName, string[] FieldsInArray)
     9        {
    10            DataSet ds = new DataSet();
    11            DataTable dt = new DataTable(TableName);
    12
    13            FileStream fs = File.Open(FilePath, FileMode.Open, FileAccess.Read);
    14            StreamReader sr = new StreamReader(fs);
    15
    16            for (int i = 0; i < FieldsInArray.Length; i++)
    17            {
    18                dt.Columns.Add(new DataColumn(FieldsInArray[i], typeof(string)));
    19            }

    20
    21            string strRead;
    22            bool flag = true;
    23
    24            while (flag)
    25            {
    26                strRead = sr.ReadLine();
    27
    28                if (!string.IsNullOrEmpty(strRead))
    29                {
    30                    string[] aryVale = strRead.Split('|');
    31
    32                    DataRow dr = dt.NewRow();
    33                    for (int k = 0; k < FieldsInArray.Length; k++)
    34                    {
    35                        dr[FieldsInArray[k]] = aryVale[k];
    36                    }

    37                    dt.Rows.Add(dr);
    38                }

    39                else
    40                {
    41                    flag = false;
    42                }

    43            }

    44
    45            ds.Tables.Add(dt);
    46            return ds;            
    47        }
  • 相关阅读:
    Hadoop基础---流量求和MapReduce程序及自定义数据类型
    Hadoop基础---MapReduce及YARN中job提交源码分析(进一步理解Hadoop机制)
    Hadoop基础---MapReduce的几种运行模式(方便调试)
    Hadoop基础---MapReduce实现
    Hadoop基础---RPC框架思想及HDFS源码解析
    Hadoop基础---HDFS的Java客户端编写
    Hadoop的安装(2)---Hadoop配置
    Hadoop的安装(1)---linux基本配置
    第23章 RTX 低功耗之待机模式
    第22章 RTX 低功耗之停机模式
  • 原文地址:https://www.cnblogs.com/winnxm/p/927880.html
Copyright © 2020-2023  润新知