c#里excel转换成csv的万能方法
2012-04-01 10:27
267 查看
最近搞了半天,都搞不定excel转换问题,总算找到一个ExcelWrapper.dll,直接在机子里面打开excel,然后读取cell,读好后把cell内容整理好,转换成csv格式。好了废话少说,下面的是我写的转换类
OleDb连接方法
主要不兼容64位模式,折腾了好久,这次总算解决了!
文件这样上传,不知道对不对
http://files.cnblogs.com/grey/ExcelWrapper.zip
OleDb连接方法
static void convertExcelToCSV(string sourceFile, string worksheetName, string targetFile) { string strConn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + sourceFile + ";Extended Properties=\"Excel 8.0;HDR=Yes;IMEX=1\""; OleDbConnection conn = null; StreamWriter wrtr = null; OleDbCommand cmd = null; OleDbDataAdapter da = null; try { conn = new OleDbConnection(strConn); conn.Open(); //cmd = new OleDbCommand("SELECT * FROM " + worksheetName, conn); cmd = new OleDbCommand("SELECT * FROM [" + worksheetName + "$]", conn); cmd.CommandType = CommandType.Text; wrtr = new StreamWriter(targetFile); da = new OleDbDataAdapter(cmd); DataTable dt = new DataTable(); da.Fill(dt); for (int x = 0; x < dt.Rows.Count; x++) { string rowString = ""; for (int y = 0; y < dt.Columns.Count; y++) { rowString += "\"" + dt.Rows[x][y].ToString() + "\","; } wrtr.WriteLine(rowString); } Console.WriteLine(); Console.WriteLine("Done! Your " + sourceFile + " has been converted into " + targetFile+"."); Console.WriteLine(); } catch (Exception exc) { Console.WriteLine(exc.ToString()); Console.ReadLine(); } finally { if (conn.State == ConnectionState.Open) conn.Close(); conn.Dispose(); cmd.Dispose(); da.Dispose(); wrtr.Close(); wrtr.Dispose(); } }
主要不兼容64位模式,折腾了好久,这次总算解决了!
文件这样上传,不知道对不对
http://files.cnblogs.com/grey/ExcelWrapper.zip
相关文章推荐
- C#导出数据到CSV和EXCEL文件时,过长的数值被转义的解决方法
- 转换成CSV文件、Word、Excel、PDF等的方法--读取CSV文件的方法
- C#导出数据到CSV和EXCEL文件,过长的数值被转义的解决方法
- C#导出数据到CSV和EXCEL文件时数字文本被转义的解决方法
- 将网页内容转换成word或excel文档的方法(c#.net)
- C#导出数据到CSV和EXCEL文件,过长的数值被转义的解决方法(3)
- 将网页内容转换成word或excel文档的方法(c#.net)
- asp.net中导出到Excel的方法汇总及导出Excel/Csv格式数据最优方案(C#)
- csv 中 数值被自动转换成科学计数法 的问题 excel打开后数字用科学计数法显示且低位变0的解决方法
- c# 在wince上 读excel csv txt 的方法
- csv 中 数值被自动转换成科学计数法 的问题 excel打开后数字用科学计数法显示且低位变0的解决方法
- C#中将DataTable转换成CSV文件的方法
- C#导出数据到CSV和EXCEL文件时数字文本被转义的解决方法
- asp.net中导出到Excel的方法汇总及导出Excel/Csv格式数据最优方案(C#)
- C#导出数据到CSV和EXCEL文件时,过长的数值被转义的解决方法
- 将网页内容转换成word或excel文档的方法(c#.net)
- C# .csv文件转为Excel格式;Excel格式转换为.csv
- C#导出数据到CSV和EXCEL文件,过长的数值被转义的解决方法
- Excel(XLS,XLSX)和CSV相互转换 - C#简单实现方案
- c#读取excel的xls和xlsx文件的方法