我使用oledb读取csv:
Connection = new OleDbConnection(@"Provider = Microsoft.Jet.OleDb.4.0;" +
@"Data Source='" + Path.GetDirectoryName(FileWork) + "';" +
@"Extended Properties=""Text;HDR=YES;FMT=Delimited""");
Connection.Open();
OriginTableName = "[" + Path.GetFileName(FileWork) + "]";
Adapter = new OleDbDataAdapter("SELECT * FROM " + OriginTableName, Connection);
这是我的 CSV:
COL1,COL2,COL3,COL4,COL5
ABC,DEF,GHI,"57/8",125
ABC,DEF,GHI,801,587
问题是 CSV 中的值 57/8 永远不会被读取,CSV 的这个单元格总是返回空字符串。当我删除 CSV 文件的第二行时,它显示为 57/8。
如何读取混合字符串/数字列?
在我看来,csv 确实是一个文本。 为什么你不尝试使用
File.ReadAllLines()
从csv中获取信息?