为了账号安全,请及时绑定邮箱和手机立即绑定

使用现有的 .doc 和 .net core 查找和替换

使用现有的 .doc 和 .net core 查找和替换

C#
暮色呼如 2021-11-14 17:06:18
我正在尝试在我创建并添加到我的 .net 核心项目中的 word 文档模板中查找和替换特定的单词/字符串。我目前正在使用 NPOI 来做到这一点,但我似乎无法弄清楚,因为我的 C# 知识不是很好!理论上我想阅读现成的 .docx 模板,然后替换我需要的内容,然后保存它。我已经尝试了我能想到的所有方法,但仍然无法正常工作。这是我留下的代码:var docUrl = @"App_Data/Document_Template.docx";using (FileStream file = new FileStream(docUrl, FileMode.Open, FileAccess.Read))        {            XWPFDocument doc = new XWPFDocument(file);            // get the document template using docUrl and replace string with another string.            doc.Write(file);        }任何帮助都会很棒,因为我花了很多时间研究并尝试实现这一点,只是没有任何运气!
查看完整描述

1 回答

?
慕森卡

TA贡献1806条经验 获得超8个赞

要替换 MS Word 中的特定单词,首先您应该从 nuget 添加以下参考:


Install-Package Microsoft.Office.Interop.Word

此示例代码用另一个替换指定的字符串:


namespace MSWordReplacement

{

    class Program

    {

        static void Main(string[] args)

        {

            Application app = new Application();

            Document doc = app.Documents.Open(@"C:\Sample.docx");


            // Assign a search string to a variable.

            object findText = "Find me.";


            // Clear formatting from previous searches.

            app.Selection.Find.ClearFormatting();


            if (app.Selection.Find.Execute(ref findText))

            {

                // Replace new text.

                app.Selection.Text = "You found me!";

            }

            else

            {

                // Do somthing else.

            }


            doc.Close(true);

            app.Quit();

        }

    }

}

警告你应该知道这个包正在工作,但它可能与 dot net core 不完全兼容!


查看完整回答
反对 回复 2021-11-14
  • 1 回答
  • 0 关注
  • 237 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信