C#保存xlsx
用dotnet C# 导入25W行数据进Excel,保存之前看到Excel里面数据都是全的,但是一保存就出"互换性错误",大概是说,老版本不支持大数据,大量数据丢失。如果是在Excel界面里另存为xlsx的话,数据都是存在的。
所以,想请教一下大家,用程序的话,一般怎么保存数据而不丢失,最好是保存为xlsx。
用的包excel 12版的
使用的方法
Workbook.SaveAs(FileName, FileFormat, Password, WriteResPassword, ReadOnlyRecommended, CreateBackup, AccessMode, ConflictResolution, AddToMru, TextCodepage, TextVisualLayout, Local)
实际是
Workbook.SaveAs("C:\\2.xlsx", IExcel.XlFileFormat.[color=Red]xlWorkbookNormal[/color], null, null, null, null, IExcel.XlSaveAsAccessMode.xlNoChange, null, null, null, null, null);
是不是我用错了,或者还有其他的保存方法。
谢谢
------解决方案--------------------EXCEL一个SHEET最大的行是65535呢。
LZ是如何在一个SHEET里面保存25W行数据的啊?学习学习。
------解决方案--------------------是不是要更新一下你的excel包,让他支持大数据
------解决方案--------------------excel 2000 和excel 2003 支持65535行数据,而excel 2007支持百万。
------解决方案--------------------
------解决方案--------------------C# code
string filename = "d:\\excel\\" + name + ".xlsx"; //文件保存路径
//string filename=
//创建Excel文档
Excel.Workbook ExcelDoc = ExcelApp.Workbooks.Add(Type.Missing);
Excel.Worksheet xlSheet = ExcelDoc.Worksheets.Add(Type.Missing, Type.Missing, Type.Missing, Type.Missing);
Excel.XlFileFormat format = Excel.XlFileFormat.xlWorkbookNormal;
ExcelApp.DisplayAlerts = false;
//Excel.XlSaveAsAccessMode accessmode = Excel.XlSaveAsAccessMode.xlExclusive;
//写入内容
if (content != null)
xlSheet.Cells[1, 1] = content;
else
xlSheet.Cells[1, 1] = "内容";
//文件保存
xlSheet.SaveAs(filename);
ExcelDoc.Close(Type.Missing,filename, Type.Missing);
//ExcelApp.Quit();
message = name + "文档生成成功,以保存到C:CNSI下";
------解决方案--------------------
楼主这得要多大的数据量啊
------解决方案--------------------
有csv存吧 逗号分开-。-