日期:2014-05-20  浏览次数:21064 次

.net中怎样将excel文件直接转换为csv格式的文本文件
客户给过来的是excel文件,但发现excel通过SSIS导到数据库中会把其中的的列转换为NULL(如果大部分列为金额的,有几条为字符串,则会把字符的转为NULL).现在就是想把Excel文件当作文本处理。。数据量太大又不能每次读出来再保存为csv。。望高手指教。。
------解决方案--------------------
1.excel->List<T>
http://www.cnblogs.com/codefish/archive/2013/04/08/3009098.html

2.List<T> -> csv
http://www.cnblogs.com/mingmingruyuedlut/archive/2013/01/20/2849906.html
------解决方案--------------------
用Microsoft.Office.Interop.Excel
Microsoft.Office.Interop.Excel.Application excelApp = new Microsoft.Office.Interop.Excel.Application();
string myPath = @"Myfile\data.xlsx";
excelApp.Workbooks.Open(myPath);
excelApp.Workbooks.SaveAs("Myfile\data.csv", Microsoft.Office.Interop.Excel.XlFileFormat.xlCSV);

大概就这样
------解决方案--------------------
就按楼上的!!!
------解决方案--------------------
引用:
用Microsoft.Office.Interop.Excel
Microsoft.Office.Interop.Excel.Application excelApp = new Microsoft.Office.Interop.Excel.Application();
string myPath = @"Myfile\data.xlsx";
excelApp.Workbooks.Open(myPath);
excelApp.Workbooks.SaveAs("Myfile\data.csv", Microsoft.Office.Interop.Excel.XlFileFormat.xlCSV);

大概就这样

看上去可以。。
------解决方案--------------------
文件>>另存为...>>保存类型: 从列表中选择 CSV(逗号分隔)(*.CSV)格式即可