Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/129.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 如何在C+中创建OpenOffice文档+;_C++_Ms Word_Openxml_Openoffice.org_Openxml Sdk - Fatal编程技术网

C++ 如何在C+中创建OpenOffice文档+;

C++ 如何在C+中创建OpenOffice文档+;,c++,ms-word,openxml,openoffice.org,openxml-sdk,C++,Ms Word,Openxml,Openoffice.org,Openxml Sdk,可能重复: 嗨 我需要从C++程序中创建Word文档, 我使用的是windows 2008 server,办公自动化有时会失败,而且我需要非交互式服务来处理,因为自动化提供了交互式服务。我已经实现了自动化,它有时会失败 我可以用什么方法创建openoffice/word文档 你能给我推荐任何链接或教程来做上述工作吗 PS-我开始了解两种方法1.Openoffice SDK 2.OpenXML SDK 如果您已经使用过上述方法,请建议我使用上述哪种方法 提前感谢我建议您看看作者在哪里解释了他在服

可能重复:

我需要从C++程序中创建Word文档, 我使用的是windows 2008 server,办公自动化有时会失败,而且我需要非交互式服务来处理,因为自动化提供了交互式服务。我已经实现了自动化,它有时会失败

我可以用什么方法创建openoffice/word文档

你能给我推荐任何链接或教程来做上述工作吗

PS-我开始了解两种方法1.Openoffice SDK 2.OpenXML SDK

如果您已经使用过上述方法,请建议我使用上述哪种方法


提前感谢

我建议您看看作者在哪里解释了他在服务器上生成Word文档所采用的解决方案,没有MsWord可用,没有自动化或第三方库。

如果您的目标是Word 2007及以上版本,直接使用Open Office XML SDK和Open Office XML是很好的选择

如果您的目标用户是Word 2003及更早版本的用户,那么它可能不是最佳选择。但是,即使这些用户也可以安装免费的过滤器,以便能够在Word 2003中打开Word 2007(.docx)文档。您可以从应用程序链接到此下载。大多数使用Word 2003或更早版本的人可能都安装了此过滤器,因为他们经常会遇到共享较新文件的情况

OpenOfficeXMLSDK是一个用于读写.docx和其他Office2007文件的.NETAPI。如果您使用的是C++/CLI,那么您可以非常轻松地使用它,它将简化编写.docx文件的过程

但是,如果你使用的是没有.NET的C++,那么你就不能使用SDK了。但这并不是一个巨大的损失。SDK只是XML文件的一个很小的包装器。docx文件只是一个包含大量XML文件的zip文件。在文件之间的关系、文本存储的位置以及某些内容如何被位置而不是ID引用方面存在一些奇怪之处,这通常被认为是XML的一种非常糟糕的做法。尽管如此,这些问题很容易解决,您可以手动创建.docx文件,而无需太多麻烦。事实上,创造比阅读容易得多


SDK仍然很有用,因为它包含一个文件探索工具,可以为现有文件提供一个图形浏览器。当您想知道如何创建特定内容时,请在Word 2007中进行操作,保存文件,然后查看文件包含的内容。

这里有一个新发布的C库,名为libOPC,它与Open XML SDK具有相同的用途,但可用于所有Linux/Windows/Mac/等。您可以在此处阅读:并从中获取代码(请务必查看演示视频)。

@paul R-请查看您链接的上述qestion讲述办公自动化、嵌入word文档。我需要通过一个C++程序创建一个OpenOffice Word文档,可以使用Office EngOpenXML或OpenOffice SDK。office automation有时会失败,我也需要非交互式服务来处理,因为automation提供交互式服务。我已经实现了automation,它有时会失败。office automation对服务器不安全。这绝对不是所提到的其他问题的重复,关于办公自动化的答案也不合适。@Paul R,Greg S,MSalters,Bo Persson,Graviton-我不认为这是问题的重复,因为我已经清楚地提到我在服务器上编程,自动化在此时失败。这不是重复。Paul R、Greg S、MSalters、Bo Persson和Graviton中没有一个人在任何Office编程标签上有任何徽章-很明显,那些关闭它的人不了解这里讨论的技术。正在移动以重新打开。