使用C#读取Excel文件(希望所有内容都为字符串)

时间:2012-02-07 13:39:40

标签: c# excel ado.net

我正在使用C#代码将excel文件读入数据表并将其显示到WPF数据网格中。当我从excel文件中读取日期并将其显示为数据网格时,日期格式会发生变化。我正在使用Oledb ADO.NET来读取excel文件。

我使用的查询是:

SELECT * FROM [Sheet1$]

所以基本上我想从excel中读取数据,当用户打开excel时,用户看起来就像我想要在数据网格中显示它一样。请指导我。如果您需要有关此问题的任何其他信息,请询问我。

此致 Priyank Thakkar

2 个答案:

答案 0 :(得分:1)

使用与此类似的连接字符串:

OLEDB;Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\MyExcel.xls;Extended Properties="Excel 8.0;HDR=Yes;IMEX=1";

引自ConnectionStrings.com

  

“IMEX = 1;”告诉司机总是读“混合”(数字,   日期,字符串等)数据列为文本。请注意,此选项可能   影响excel表写访问否定。

答案 1 :(得分:0)

您可以将文件另存为.csv和:

        string[] fileLines = File.ReadAllLines("path\file.csv");

        foreach (string s in fileLines)
        {
            string[] splitRow = s.Split(',');
            //do stuff w/ row columns
        }