gpt4 book ai didi

c# - 删除 OpenXML DOCX 的文档变量?

转载 作者:太空宇宙 更新时间:2023-11-03 14:24:57 25 4
gpt4 key购买 nike

我正在尝试从 DOCX 文件中删除 doc 变量。这是我正在使用的代码,但它不会删除任何...

这是完整的代码:

class Program
{
static void Main(string[] args)
{
string filePath = "C:\\..\\..sample.docx";
Remove removedocvars = new Remove();
removedocvars.RemoveDocVariables(filePath);

}
}

//method to remove doc vars
public void RemoveDocVariables(string fileName)
{
using (WordprocessingDocument doc = WordprocessingDocument.Open(fileName, true))
{

List<DocumentVariables> DocVarsToDelete = doc.MainDocumentPart.RootElement.Descendants<DocumentVariables>().ToList();
foreach (DocumentVariables dc in DocVarsToDelete)
{
dc.Remove();
}
doc.MainDocumentPart.Document.Save();
}
}

最佳答案

变量在 settings.xml 文件中,因此您必须使用 MainDocumentPart.DocumentSettingsPart.Settings.Descendants<>()。

public void RemoveDocVariables(string fileName)
{
using (var doc = WordprocessingDocument.Open(fileName, true))
{
doc.MainDocumentPart.DocumentSettingsPart.Settings.RemoveAllChildren<DocumentVariables>();
}
}

关于c# - 删除 OpenXML DOCX 的文档变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4340034/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com