Excel2007打开xls文件的扩展名警告问题,求助

来源:百度知道 编辑:UC知道 时间:2024/05/14 08:26:23
C#编了个把txt文件转换成excel的程序,结果转化后的excel文件用excel2007打开会警告:您尝试打开的文件“table.xls”的格式与文件扩展名指定的格式不一致。打开文件前请验证文件没有损坏且来源可信。是否立即打开该文件?”。点击“是”,显示一切正常。2003下则没有这问题,请问各位大哥,有没有办法在两种版本下都可以正常打开?或者有没有代码可以去掉2007的这个警告。谢谢。
部分代码:
wbs = app.Workbooks;
wb = wbs.Add(Missing.Value);
wb.SaveAs(xlsAppPathFileName, Type.Missing, Type.Missing, Type.Missing,
false, false,
Excel.XlSaveAsAccessMode.xlNoChange,
Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing);
ws = (Excel.Worksheet)wb.Worksheets[1];
Excel.Range r = ws.get_Range("A1", "F1");
object[] objHeader = { "单号", "条码", "内部编码", "名称", "单位", "数量" };
//r.get_Value(objHeader);
r.Value2 = objHeader;

应该是新版本的007修改了xls文件结构,具体你在编程时加载2007提供的excel组件编写就成了,至于要二者斗支持,我也说不好,除非2003和2007自身先兼容了。

将2003(xls)与2007(xlsx)两个版本的后续名都加入代码中,可解决两种版本都能打开。

安装一个兼容程序转换即可,office 2003 与2007文件均可打开,并可通过“另存为”互相转换。