none
如何用serialport 读取设备CSV代码 RRS feed

  • 问题

  • 我刚买一个设备 通过USB联线 传输CSV形式的数据(数据为 数字) 用了超级终端 显示的全部是乱码
    想用C#编写一个程序读取数据 并转为数字
    望高手赐教
    2010年3月7日 17:25

答案

全部回复

  •  public DataSet ConnectCSV(string filetable,string CSVFilePath)
      {
       DataSet ds = new DataSet();
       try
       {  
        // You can get connected to driver either by using DSN or connection string
        // Create a connection string as below, if you want to use DSN less connection. The DBQ attribute sets the path of directory which contains CSV files
        string strConnString="Driver={Microsoft Text Driver (*.txt; *.csv)};Dbq="+CSVFilePath+";Extensions=asc,csv,tab,txt;Persist Security Info=False";
        string sql_select;        
        System.Data.Odbc.OdbcConnection conn;  
      
        //Create connection to CSV file
        conn = new System.Data.Odbc.OdbcConnection(strConnString.Trim());
        //Open the connection
        conn.Open();
        //Fetch records from CSV
        try
        {
         sql_select  = "SELECT  * from ["+ filetable +"]";    
         obj_oledb_da = new System.Data.Odbc.OdbcDataAdapter(sql_select,conn);
         obj_oledb_da.Fill(ds,"Tag");
         dGridCSVdata.DataSource=ds;
         dGridCSVdata.DataMember="Tag";
        }
        catch(Exception ex)
        {
         MessageBox.Show("待导入的CSV文件格式不正确","警告");
        }
        conn.Close();    
       }
       catch(Exception e) //Error
       {
        MessageBox.Show(e.Message,"警告");
       }
       return ds;
      }
    


    参照:
    http://blog.sina.com.cn/s/blog_540a6a3e01000756.html
    努力+方法=成功
    2010年3月8日 1:44
  • 但是这样并没有用到SERIALPORT 啊
    2010年3月8日 3:03
  • 可以看下这,有详细介绍:
    http://vbdotnet.phpchinaz.cn/archives/239235

    咯咯
    2010年3月8日 5:01
  • 使用这个SERIALPORT控件,又不难,挂上事件,把得到的数据转化为你要格式就可以了,不过要注意编码格式,一般没有明确说明可能是Default。这个要偿试一下。
    还有什么问题,可以Q我:174631415,一起讨论一下。
    2010年3月15日 8:48