C# EXCEL导入 混合列读取文字为空的解决办法

问题:

EXCEL里面的一列,数字在先,文字在后,读不出文字,只能读出数字,怎么回事?


解决方案:

首先,把连接字符串改为:  Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + fileName + ";Extended Properties='Excel 8.0;HDR=YES;IMEX=1'重点是  IMEX=1这句。

不过,这样的话,EXCEL 默认读取前8行,如果前8行都没有出现文本,那么就认为这一列的所有值都是数字,在

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Jet\4.0\Engines\Excel这里面可以修改默认读取几行判断列的类型,不过即使改为1000,还是有可能前1000行都是数字,所以,使用的时候只能尽量把字母行放前数字放后面。


你可能感兴趣的:(c#,编程)