无法从 C# 中的 excel 文件中读取数值
Posted
技术标签:
【中文标题】无法从 C# 中的 excel 文件中读取数值【英文标题】:unable to read numeric values from excel file in c# 【发布时间】:2011-03-02 12:58:20 【问题描述】:我正在使用以下连接字符串
提供者=Microsoft.Jet.OLEDB.4.0;" + "数据源=" + Convert.ToString(pa) + ";" + "扩展属性=Excel 8.0
但当一列仅包含数值时,它会将其读取为空
有什么想法吗? 请帮忙
【问题讨论】:
您的 excel 列是仅包含数值还是还包含字符串值?如果列有标题,则必须在连接字符串中使用HDR=1;
选项。
@Devendra:它也可能包括字符串和数值,标题不是强制性的..但是在阅读时我将第一行作为标题行。但是如果我设置 HDR=1 那么总是第一行将被视为标题。如果第 1 行为空,则第 2 行将被视为标题,但是不读取数值?
【参考方案1】:
阅读这篇博文
http://blog.lab49.com/archives/196
更好地了解这里发生了什么。简而言之:使用 OleDb 读取 Excel 工作表在(糟糕的!)设计上是非常不可靠的。这是一个更好的选择(对于旧的非 XML Excel 文件格式):
http://jexcelapi.sourceforge.net/
(在“文件”部分下,您将找到此 Java 库的 C# 端口)。
【讨论】:
thanx brown 博客上的优秀文章以上是关于无法从 C# 中的 excel 文件中读取数值的主要内容,如果未能解决你的问题,请参考以下文章