惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

GbyAI
GbyAI
Y
Y Combinator Blog
Recent Announcements
Recent Announcements
D
Docker
Blog — PlanetScale
Blog — PlanetScale
罗磊的独立博客
美团技术团队
V
V2EX
Last Week in AI
Last Week in AI
D
DataBreaches.Net
T
The Blog of Author Tim Ferriss
宝玉的分享
宝玉的分享
Microsoft Security Blog
Microsoft Security Blog
Microsoft Azure Blog
Microsoft Azure Blog
人人都是产品经理
人人都是产品经理
M
MIT News - Artificial intelligence
P
Proofpoint News Feed
B
Blog RSS Feed
博客园_首页
B
Blog
博客园 - 叶小钗
I
InfoQ
WordPress大学
WordPress大学
L
LangChain Blog
Apple Machine Learning Research
Apple Machine Learning Research
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
A
About on SuperTechFans
The GitHub Blog
The GitHub Blog
The Register - Security
The Register - Security
MyScale Blog
MyScale Blog
云风的 BLOG
云风的 BLOG
博客园 - 司徒正美
Latest news
Latest news
W
WeLiveSecurity
T
The Exploit Database - CXSecurity.com
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
aimingoo的专栏
aimingoo的专栏
小众软件
小众软件
Cyberwarzone
Cyberwarzone
Scott Helme
Scott Helme
D
Darknet – Hacking Tools, Hacker News & Cyber Security
C
CERT Recently Published Vulnerability Notes
C
CXSECURITY Database RSS Feed - CXSecurity.com
Recent Commits to openclaw:main
Recent Commits to openclaw:main
N
News and Events Feed by Topic
S
Secure Thoughts
The Hacker News
The Hacker News
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
Google DeepMind News
Google DeepMind News

博客园 - 没有空气

修改win7电脑中所有文件的默认查看方式 转:Google推出免费DNS服务,首选首选8.8.8.8 备选8.8.4.4 无法在Web服务器上启动调试。您不具备调试此应用程序的权限,此项目的URL位于Internet区域 Oracle错误:"ORA-00988: 口令缺失或无效"解决 Oracle中用户用as sysdba可以登录,但normal登录不了 oracle 视图上创建触发器,发生“无法在视图上创建此类型的触发器”错误 异形孔向导用不了的解决办法(转) 给word 2003打补丁以适应2007文档格式 原:Oracle 和 SqlServer下获取主外键表名字段名约束名的语句 sqlserver与oracle case when else ,isnull语法差别 DDL、DML、DCL Hashtable 使用GetEnumerator() 时发生 System.InvalidOperationException类型错误 npkcrypt 服务启动失败导致 Oracle11g TNSListener服务开机自动启动不了 WORD"对话框打开时命令无法执行"的解决方法 Nero刻录时报"QueryDosDevice Failed"错误 关于cidaemon.exe进程CUP占用率高的解决办法 取Excel表的字段名字 "找不到可安装的 ISAM” 和"创建文件流失败" 求每个分组里面的最大值对应的记录的sql语句
C#编程生成的Word2007版本的文件如何兼容Word2003?(通过代码将docx文件转存为doc文件)
没有空气 · 2008-10-21 · via 博客园 - 没有空气

以前用C#在Word2003下写的生成报表程序。现在大家都改用Office2007了,给程序做了下升级,发现生成的文档后缀都是docx了。

Office 2007 Word 文档格式为 Microsoft Open Office XML Format (.docx),这种格式不被老版本的 Office 兼容。Word2007 的文档格式与 Word97~2003 的二进制文档格式有根本的不同。Office 2007 的推出,全面启用了 OPEN XML 概念。WordExcelPowerPoint 文档已经默认保存为压缩的 XML 格式,所以其大小也大大减小了。

也就是说B/S模式下,客户端下载下生成的docx文件后,需要安装Office 2007,或者安装 Office 2007 Compatibility Pack for Windows才能打开。有手动更改到2003兼容模式的办法:

单击Word 2007左上角的“Office按钮”,在展开的菜单中单击“Word选项”按钮打开“Word选项”,接着打开“保存”标签页,设置“将文件保存为此格式”下拉列表为“Word 97-2003 文档(.doc)”,这样的话以后就会默认保存为doc格式了。

但这样并不方便。我们需要的最好是能直接在服务器上生成能被2003打开的doc格式的文件。

Word 2003 SaveAs代码

这样保存的是默认的文档格式,2007下为docx。

要存为doc格式,关键在与SaveAs的第二个参数FileFormat上,FileFormat设置文档的保存格式。可以是任何 WdSaveFormat 值。要以另一种格式保存文档,请为 SaveFormat 属性指定适当的值。

Word 2007下SaveAs代码

好了,重新运行程序,生成的文档为doc格式,放到2003下打开,ok没问题了。

参考资料:

SaveAs 方法:http://msdn.microsoft.com/zh-cn/library/microsoft.office.tools.word.document.saveas(VS.80).aspx

WdSaveFormat 枚举值http://msdn.microsoft.com/zh-cn/library/microsoft.office.interop.word.wdsaveformat(VS.80).aspx不过这个估计是Word2003的,2007的值比这个多