问题:从一个给定的dataTable导出数据到一个dbf 文件时,需要创建一个dbf 文件,用的是oledb,
创建dbf 文件时,需要指定字段类型及长度,字段类型可以通过一种数据类型间的对应关系实现,但是字段长度有没有好的方法获取呢?难道是从dataTable 中获取各列的最大长度?
请指教。

解决方案 »

  1.   

    从datatable中的datacolumn去判断。
      

  2.   

    use "DataColumn.DataType" and "DataColumn.MaxLength" properties
      

  3.   

    Knight94(愚翁) :DataColumn.MaxLength 的最大长度是指可能的最大的长度,而不是实际数据的最大长度啊?因为我的需求仅是导出数据,并不会再对导出的Dbf文件进行其他操作,所以只需要dataTable 中的实际存在数据的最大长度。
    我不知道还有没有其他的思路。
    我的想法是能否通过dataTable 自身的方法,如compute 计算出某列的值的最大长度?或其他的方法?
    谢谢.
      

  4.   

    其实字段确定了,对应的长度基本也就确定了,除了string相关的类型外。而MaxLength所对应的就是当前文本列的最大长度。
      

  5.   

    所以对于文本来说,用datacolumn.maxlength有一定的误差,这需要通过datatable所对应的数据库方面的来源来加以说明要好一些。