导致文件本身“破损:。还有一种个别情况就是文件格式不正确,比如用户用的是office
2010以上的版本,里面是excel软件制作的excel文档,保存时是默认文件格式,那么用户的文件就是“.xlsx”格式的,而这种格式的
excel文档只能在2010版以上的版本中才能打开,2009及以下版本都是无法打开的。
解决办法:如果是第一类情况,解决办法就只有重新从原文件拷贝一份。如果是第二种情况,就需要用户在2010版以上的Excel里打开,然后另存一份格式为2003—2009版的后缀名为“**.xlsx"的文档。
用 EPPlus 插件吧,导出excel很简单的。using (ExcelPackage package = new ExcelPackage())
{
ExcelWorksheet sheet = package.Workbook.Worksheets.Add("Summary")
sheet.Cells[1, 1].Value = "1"
sheet.Cells[1, 2].Value = "2"
sheet.Cells[1, 3].Value = "3"
sheet.Cells[1, 4].Value = "4"
sheet.Cells[1, 5].Value = "5"
sheet.Cells[1, 6].Value = "6"
using (Stream stream = new FileStream(AppDomain.CurrentDomain.BaseDirectory + "\\Test.xlsx", FileMode.Create))
{
package.SaveAs(stream)
}
}
MessageBox.Show("搞定!")
用程序来 *** 作office组件,麻烦得很,我用C#造作word,经验是微软在这方面不是太重视,有些开发工具的功能很糟糕,建议注意这方面。我的做法是,只要能通过word文档 *** 作的,一般不去通过编程解决。欢迎分享,转载请注明来源:内存溢出
评论列表(0条)