CSV到数据表正在删除主键

时间:2014-02-13 16:26:03

标签: c# .net winforms csv

我正在将CSV文件加载到数据表中。该文件正在成功加载,但它正在删除第一列中的一些主键。它正在删除所有带有字母的值。我注意到它正在将它们视为字符串与数字。我将列的单元格类型设置为文本,但它没有任何区别,正如我期望的CSV文件。

以下是我加载文件的方式。

    public static DataTable GetDataFromCSV(string path, bool isFirstRowHeader)
    {
        string header = isFirstRowHeader ? "Yes" : "No";
        string pathOnly = Path.GetDirectoryName(path);
        string filename = Path.GetFileName(path);
        string sql = @"SELECT * FROM [" + filename + "]";

        using (OleDbConnection conn = new OleDbConnection(@"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + pathOnly + ";Extended Properties=\"Text;HDR=" + header + "\""))
        {
                using(OleDbCommand command = new OleDbCommand(sql, conn))
                using (OleDbDataAdapter adapter = new OleDbDataAdapter(command))
                {
                    DataTable dataTable = new DataTable();
                    dataTable.Locale = CultureInfo.CurrentCulture;
                    adapter.Fill(dataTable);
                    return dataTable;
                }
        }
    }

我收到了这个。

enter image description here

应该是这样。

enter image description here

0 个答案:

没有答案