C# Word Excel Could not load file or assembly ‘office, Version=15

2023-12-31 13:30:14

C# Word Excel Could not load file or assembly ‘office, Version=15
vs2022创建的windows窗体应用程序非.netframework调用Microsoft.Office.Interop.Word;创建word文档时运行时出现未能加载文件或程序集“Microsoft.Office.Interop.Word, Version=15.0.0.0, Culture=neutral, PublicKeyToken=7原因未知,方法一:使用.netframework创建的windows窗体 直接成功
方法二:换个创建word的方法

C#创建Word文档,可以使用Microsoft Office Interop库
using Microsoft.Office.Interop.Word;

// 创建Word文档
Application word = new Application();
Document doc = word.Documents.Add();

// 添加文本
Paragraph para = doc.Content.Paragraphs.Add();
para.Range.Text = "Hello, World!";

// 保存文档
object filename = @"C:\example.docx";
doc.SaveAs2(ref filename);

// 关闭文档
doc.Close();
word.Quit();

创建二:

另一种在C#中创建Word文档的方法是使用Open XML SDK。Open XML SDK是一个免费的、开源的库,可用于创建、读取和编辑Office Open XML文档,包括Word文档、Excel工作簿和PowerPoint演示文稿等。

使用Open XML SDK创建Word文档的步骤如下:

  1. 首先,您需要在项目中引用DocumentFormat.OpenXml和DocumentFormat.OpenXml.Packaging程序集。可以通过NuGet包管理器或手动添加程序集引用来完成。

  2. 在代码中创建Word文档对象:

using DocumentFormat.OpenXml;
using DocumentFormat.OpenXml.Packaging;
using DocumentFormat.OpenXml.Wordprocessing;

class Program
{
    static void Main(string[] args)
    {
        // 创建Word文档对象
        using (WordprocessingDocument wordDoc = WordprocessingDocument.Create(@"C:\Users\user\Desktop\MyDocument.docx", WordprocessingDocumentType.Document))
        {
            // 添加文档主体部分
            MainDocumentPart mainPart = wordDoc.AddMainDocumentPart();
            mainPart.Document = new Document();
            Body body = mainPart.Document.AppendChild(new Body());

            // 添加标题
            Paragraph title = body.AppendChild(new Paragraph());
            Run titleRun = title.AppendChild(new Run());
            titleRun.AppendChild(new Text("这是标题"));
            titleRun.RunProperties = new RunProperties(new FontSize() { Val = "16" }, new Bold());

            // 添加段落
            Paragraph para = body.AppendChild(new Paragraph());
            Run paraRun = para.AppendChild(new Run());
            paraRun.AppendChild(new Text("这是第一段内容。"));
            paraRun.RunProperties = new RunProperties(new FontSize() { Val = "12" });

            // 保存Word文档
            wordDoc.Save();
        }
    }
}

文章来源:https://blog.csdn.net/qq_28821897/article/details/135315071
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。