使用Microsoft OLEDB JET驱动程序读取Excel CSV文件,如何在输入文件中保留双引号?

时间:2013-06-17 17:52:11

标签: excel oledb jet

我正在使用Microsoft OLEDB JET驱动程序读取Excel CSV文件(以逗号分隔)

“Provider = Microsoft.Jet.OLEDB.4.0; Data Source = xxx; Extended Properties ='text; HDR = Yes; IMEX = 0'”

我使用下面的代码将输入文件加载到数据表中,除了一个问题外,这个工作正常 - 如果输入字段有双引号,当我使用它打开它后将双引号加载到DataTable中时双引号就不见了oledb司机。

某些输入文件在字段周围有双引号,因为有逗号等特殊字符,我需要输出相同的文件格式(基本上根据特定字段的值将同一文件拆分成多个文件)但请保留这些双引号。如何在输入文件中保留双引号?

            OleDbCommand cmd = new OleDbCommand(string.Format("SELECT * FROM {0}", configSection.InputFile), cn);
            OleDbDataAdapter adp = new OleDbDataAdapter(cmd);
            DataTable dt = new DataTable();
            adp.Fill(dt); 

1 个答案:

答案 0 :(得分:0)

尝试在select命令的{0}附近放置方括号。

否则,只需在从数据表中拉出时再添加引号。