获取Excel列类型作为实际基础值而不是使用C#格式化值

时间:2011-09-20 16:08:59

标签: c# excel oledb

简单设置 - 我有一个Excel文件,其中有一列双打:

0.94
0.9523
0.9293

Excel文件将此列格式化为舍入百分比:

94%
95%
93%

在C#中,我设置OleDbConnection来查询此Excel文件,我的所有值都返回为:

94%
95%
93%

但我需要实际不接地值。

我的连接字符串包含扩展属性:

...Extended Properties="Excel 12.0;IMEX=1;HDR=No;TypeGuessRows=0;ImportMixedTypes=Text"

但这似乎没有诀窍。所以我的问题是, 没有手动将Excel文档更改为正确的类型 我如何才能以我需要的方式返回数据?

我听说过有关更改注册表的内容,但这不是最佳选择,因为它将部署在多台计算机上。这是我做我需要的唯一方法吗?

提前致谢!

1 个答案:

答案 0 :(得分:1)

你几乎肯定不想要ImportMixedTypes=Text

使用TypeGuessRows=1;ImportMixedTypes=Majority Types尝试。