0

我必须自动验证由另一个软件填充的多个 docx 中表格的内容,某些单元格包含合并字段文本类型,因此我无法访问这些单元格中的文本。我在此处附加的代码是适用于文本类型单元格的代码:

Table table =  wordprocessingDocument .MainDocumentPart.Document.Body.Elements<Table>().First(); 
TableRow row = table.Elements<TableRow>().ElementAt(i);
TableCell cell = row.Elements<TableCell>().ElementAt(j);
Paragraph parag = cell.Elements<Paragraph>().First();
Run run = parag.Elements<Run>().First();
Text text = run.Elements<Text>().First();

谁能告诉我是否有办法从表格单元格中恢复合并字段的内容。

4

1 回答 1

0

我终于找到了解决方案,显示文档的 xml 结构对我有很大帮助。通过使用cell.InnerXml,我注意到运行标记存在于 SimpleField 标记中,因此我通过添加一行来调整我的代码。

Table table =  wordprocessingDocument.MainDocumentPart.Document.Body.Elements<Table>().First(); 
TableRow row = table.Elements<TableRow>().ElementAt(i);
TableCell cell = row.Elements<TableCell>().ElementAt(j);
Paragraph parag = cell.Elements<Paragraph>().First();
SimpleField cellfield = parag.Elements<SimpleField>().First();
Run run = cellfield .Elements<Run>().First();
Text text = run.Elements<Text>().First();
于 2021-09-30T14:23:19.373 回答