NET峰

打造.net开发第一品牌!
  博客园  :: 首页  :: 新随笔  :: 联系 :: 管理
最近一个项目用到excel的导入和导出,遇到了这个问题,

把数据导出为excel文件后,修改部分数据,然后再导入该excel文件时就会

提示“不是预期的格式错误”。经过详细的排查,发现导出后的excel文件格式

不是真正的 Microsoft Office Excel 的文件格式,而是html的格式的excel文件,

大家可以通过 用记事本 打开该excel文件来验证,

如果打开是乱码,说明是Microsoft Office Excel 的文件格式,此格式文件导入是没有问题的。

如果打开是不是乱码,你就会发现是一些 html格式的代码,此时的excel文件在导入的时候就会报上边的错误。

然后再继续检查原因,发现如果用的是通过HttpContext.Current.Response的方式,改变ContentType的类型来输出的excel,那么导出的excel文件的格式就是html类型的excel文件。

如果采用excel组件的方式来导出excel文件,那么导出的excel文件的格式就是正常的可以导入的格式。

到此问题基本解决,希望对遇到同样问题的朋友有所帮助!

另:如果把导出的html格式的excel文件打开,另存为 正确的excel文件格式的话,也是可以正常导入的。