C# 使用Open XML和C将表格数据从word文档复制到另一个文档#
我正在尝试将表从一个文档复制到另一个文档。在源文档中,我有20多个表,我需要为每个表创建一个新文档和。我试过下面的方法 正在创建文件,但由于数据有问题,我无法打开该文件。请帮助我将表格数据从一个文档复制到另一个文档C# 使用Open XML和C将表格数据从word文档复制到另一个文档#,c#,wordpress,openxml-sdk,C#,Wordpress,Openxml Sdk,我正在尝试将表从一个文档复制到另一个文档。在源文档中,我有20多个表,我需要为每个表创建一个新文档和。我试过下面的方法 正在创建文件,但由于数据有问题,我无法打开该文件。请帮助我将表格数据从一个文档复制到另一个文档 var doc = WordprocessingDocument.Open(@"C:\Users\vnadendla\Downloads\TestWordDoc.docx", false); var parts = doc.MainDocumentPart.Do
var doc = WordprocessingDocument.Open(@"C:\Users\vnadendla\Downloads\TestWordDoc.docx", false);
var parts = doc.MainDocumentPart.Document.Descendants().FirstOrDefault();
if (parts != null)
{
foreach (var node in parts.ChildElements)
{
if (node is Table)
{
var tableData = (Table)node.Clone();
await CreateWordprocessingDocument(@"C:\Users\vnadendla\Desktop\GeneratedDocuments\tablename.docx", node, log);
}
}
}
public static async Task CreateWordprocessingDocument(string filepath,Table tableData, ILogger log)
{
try
{
// Create a document by supplying the filepath.
using (WordprocessingDocument wordDocument =
WordprocessingDocument.Create(filepath, WordprocessingDocumentType.Document))
{
// Add a main document part.
MainDocumentPart mainPart = wordDocument.AddMainDocumentPart();
// Create the document structure and add some text.
mainPart.Document = new Document();
Body body = mainPart.Document.AppendChild(new Body());
Paragraph para = body.AppendChild(new Paragraph());
Table table = para.AppendChild(new Table(tableData));
Run run = para.AppendChild(new Run());
wordDocument.Save();
}
}
catch(Exception ex)
{
log.LogError(ex.Message);
}
}