从 Excel 读取值时精度下降

Losing precision while reading value from Excel

我需要使用 OleDb 连接将 Excel 中的值读取到 DataSet。 下面是我的代码。

OleDbCommand excelCommand = new OleDbCommand(); 
OleDbDataAdapter    excelDataAdapter = new OleDbDataAdapter();
string connectionString = @"Provider=Microsoft.Jet.OLEDB.4.0;
Data Source=" + filelocation + @";Extended Properties=""Excel 8.0; IMEX=1;HDR=NO;""";
OleDbConnection excelConn = new OleDbConnection(connectionString);
excelConn.Open();
excelCommand = new OleDbCommand("SELECT * FROM [Sheet1$]", excelConn);
excelDataAdapter.SelectCommand = excelCommand;
excelDataAdapter.Fill(ds);

在阅读时我的手机精度下降。

例如: Excel 单元格的值为 -0.46256613817052

我的数据集的值为 -0.4625661

我在 Excel sheet 中的大部分单元格都是数字类型。

如何解决?请帮忙

根据 Microsoft.Jet.OLEDB.4.0 rounding excel data? 的回答,如果您需要获取精确值,则需要使用 visual studio 办公工具。

我已经使用 Excel Data Reader/

解决了这个问题