如数据是2D00,读入DATAGRID就是2,请问这个问题怎么解决?

解决方案 »

  1.   

    设置 DataGrid 这一列的数据格式为“通用”。
      

  2.   

    但是现在的问题是,好象数据在读入ADO的时候已经被转换过了,改DATAGRID没有用
      

  3.   

    1.FrmEdit.Adodc1.ConnectionString   = "Provider=MSDASQL.1;PersistSecurityInfo=False;Data Source=csvodbc"
    2.FrmEdit.Adodc1.RecordSource = "select * from " & strFilePath & ".csv"
    3.Set FrmEdit.DataGrid1.DataSource = FrmEdit.Adodc1原代码就是这三句,连接到数据源,然后读取指定CSV文件的内容,将内容显示到DATAGRID中
    运行的结果就是CSV文件的数据,被自动转换了
    如2D00被转换成2,0001被转换成了1请问这是怎么回事?
      

  4.   

    这是数据库引擎访问外部文件的一个令人头痛的问题。因为 .csv 并不包含字段数据类型信息,引擎是通过扫描头几行来猜测数据类型的。不过你可以通过一个同目录下的 Schema.ini 文件来解决此问题。数据库引擎会自动访问它。
    格式如下:
    [文件名.csv]
    ColNameHeader=True
    Format=CSVDelimited
    MaxScanRows=25Col1=KEY Char Width 5
    Col2=DATE Date(dddd-mm-yy) Width 10
    Col3=HIGH Float Width 6
    Col4=LOW Float Width 6
    Col5=CLOSE Float Width 6
    Col6=VOLUME Char Width 9
    ......一个 .ini 文件中可以定义多个 .csv 的格式。将你的文字字段定义为 Char 就 OK 了。
      

  5.   

    另,你的问题应该叫作“读 .csv 格式数据库数据类型出现错误”