C# DOC转DOCX - 不使用Office库的解决方案
要将DOC文件转换为DOCX文件,您可以使用Open XML SDK,这是一个用于处理Office文档的开源库。以下是使用Open XML SDK将DOC文件转换为DOCX文件的示例代码:
using DocumentFormat.OpenXml.Packaging;
using DocumentFormat.OpenXml.Wordprocessing;
class Program
{
static void Main(string[] args)
{
string inputFilePath = 'input.doc';
string outputFilePath = 'output.docx';
using (WordprocessingDocument doc = WordprocessingDocument.Open(inputFilePath, false))
{
string altChunkId = 'AltChunkId1';
MainDocumentPart mainPart = doc.MainDocumentPart;
AlternativeFormatImportPart chunk = mainPart.AddAlternativeFormatImportPart(
AlternativeFormatImportPartType.WordprocessingML, altChunkId);
using (var fileStream = System.IO.File.Open(outputFilePath, System.IO.FileMode.Create))
{
chunk.FeedData(fileStream);
}
AltChunk altChunk = new AltChunk();
altChunk.Id = altChunkId;
mainPart.Document
.Body
.InsertAfter(altChunk, mainPart.Document.Body.Elements<Paragraph>().Last());
mainPart.Document.Save();
}
}
}
请确保将input.doc替换为实际的输入文件路径,并将output.docx替换为实际的输出文件路径。此代码将打开输入的DOC文件,创建一个AltChunk,将输入文件的内容导入到其中,然后将AltChunk插入到DOCX文件中。最后,保存DOCX文件。
请注意,Open XML SDK需要在项目中安装DocumentFormat.OpenXml NuGet包。可以使用Visual Studio的NuGet包管理器来安装此包。
此解决方案不需要使用Office库,但仍然需要安装Open XML SDK来处理DOC和DOCX文件。
原文地址: https://www.cveoy.top/t/topic/qlcO 著作权归作者所有。请勿转载和采集!