C# 如何:使用WordProcessingML标记以编程方式向word文档添加数据和表

C# 如何:使用WordProcessingML标记以编程方式向word文档添加数据和表,c#,php,xml,openxml,wordprocessingml,C#,Php,Xml,Openxml,Wordprocessingml,通过WordProcessingML修改word文档的结构后,是否可以访问该文档? 我需要将表添加到word文档中,而不是直接使用C,而是将xml注入C。数据通过以下方法中的列表获取。 我必须使用这些数据并结合非常大的xml标记来构建整个表 -创建一个带有“hello world”字符串的word文档并保存它,比如example.docx -将example.docx重命名为example.zip以将其转换为zip文件 -解压缩zip文件并删除example.zip,一旦解压缩,您将看到3个

通过WordProcessingML修改word文档的结构后,是否可以访问该文档?

我需要将表添加到word文档中,而不是直接使用C,而是将xml注入C。数据通过以下方法中的列表获取。 我必须使用这些数据并结合非常大的xml标记来构建整个表

-创建一个带有“hello world”字符串的word文档并保存它,比如example.docx

-将example.docx重命名为example.zip以将其转换为zip文件

-解压缩zip文件并删除example.zip,一旦解压缩,您将看到3个文件夹(_rels、docProps、word),文件夹名“word”包含document.xml文件

-修改document.xml文件而不是“Hello World”,说“Hello W4rld”,然后将整个文件夹重新压缩到example.zip,然后将扩展名从example.rar更改为example.docx

打开example.docx给定错误。有人知道吗

Public static string Method1(List<class> list)
{
//foreachloop
// Build table structure with xml(wordprocessingML)
// Use StringBuilder to append this large xml table structure.

return list.Tostring()
}
公共静态字符串方法1(列表)
{
//前肢环
//使用xml(wordprocessingML)构建表结构
//使用StringBuilder附加此大型xml表结构。
return list.Tostring()
}

为什么要用rar重新压缩?或者这是拼写问题?为了正确打开文件,您必须将文件压缩为zip格式。另外,打开docx时您会收到什么错误?文件可读吗?它在xml中有任何问题吗?如果这不是rar的问题,那么您可能不仅仅是将“Hello World”替换为“Hello W4rld”,例如添加了换行符等。对不起,我的不好,只是拼写问题。它说“很抱歉,我们无法打开.docx,因为我们发现它的内容有问题。如果我单击“详细信息”,该文件已损坏,无法打开“当我使用VisualStudio时,我没有看到任何错误,我只是将一个字符替换为不带表格的word文件,将另一个字符替换为word表格。使用来比较这两个文件。反映出你需要的代码,这会给你一个很好的想法去做。@kkkla我明白了。这个错误基本上是说除了文件之外没有别的东西是损坏的。我可以确认,仅在文本中更改xml中的文本不是问题。损坏必须发生在您通过伪代码描述的流程的另一个阶段。虽然伪代码背后的逻辑看起来不错,但我正在做一件类似的事情,而且效果很好。正如mohammedlok所建议的,我将比较这两个xml文件,看看有什么变化。