zoukankan      html  css  js  c++  java
  • c# 格式化文本txt,csv的指定列

    从文本文件csv,txt 等文件内读出指定列方法多种现用微软自带的 ODBC桥接方式读取指定列。

     public static System.Data.DataSet LoadTxtFile(int numberOfRows)
            {
                System.Data.DataSet ds = new System.Data.DataSet();
                //try
                //{
                // Creates and opens an ODBC connection
                string strConnString = "Driver={Microsoft Text Driver (*.txt; *.csv)};Dbq=D:\\;Extensions=asc,csv,tab,txt;Persist Security Info=False; HDR = YES;FMT = TabDelimiter"; 
                //string strConnString = "Driver={Microsoft Text Driver (*.txt; *.csv)};Dbq=D:\\;Extensions=asc,csv,tab,txt;Persist Security Info=False; HDR = NO;FMT = Delimited(|)"; 
                
                string sql_select;
                //string connString = @"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + dataSourcePath + @";Extended Properties=""text;HDR=NO;FMT=TabDelimiter""";  
                using (System.Data.Odbc.OdbcConnection conn = new System.Data.Odbc.OdbcConnection(strConnString.Trim()))
                {
                    conn.Open();
                    sql_select = "select top " + 10 + " * from [A3.txt]";
                    //Creates the data adapter
                    System.Data.Odbc.OdbcDataAdapter obj_oledb_da = new System.Data.Odbc.OdbcDataAdapter(sql_select, conn);
    
                    //Fills dataset with the records from CSV file
                    obj_oledb_da.Fill(ds, "TB");
                    System.Data.DataView view = new System.Data.DataView(ds.Tables[0]);
                    //closes the connection
                    System.Data.DataTable dt = view.ToTable(true, "COLUMN9", "COLUMN0", "COLUMN1");
                    conn.Close();
                }
                return ds;
    
            }

    TabDelimiter 为\t制表符 也可以是其他的 如,|等分隔符 若本机注册表内默认分隔符为 Delimited(|)需要改注册表内指定值

    当然也可直接用StreamReader读指定行指定列暂不做补充


  • 相关阅读:
    SDP(12): MongoDB-Engine
    SDP(11):MongoDB-Engine功能实现
    SDP(10):文本式大数据运算环境-MongoDB-Engine功能设计
    React Native(五)——获取设备信息react-native-device-info
    React Native(四)——顶部以及底部导航栏实现方式
    去掉a标签
    React Native(三)——推送jpush-react-native
    react native (一)
    《JavaScript 秘密花园》
    正则表达式(overall)
  • 原文地址:https://www.cnblogs.com/senion/p/2804746.html
Copyright © 2011-2022 走看看