gpt4 book ai didi

.NET MS Interop Word 不在 UTF8 网页中保存文档

转载 作者:行者123 更新时间:2023-12-01 16:09:11 25 4
gpt4 key购买 nike

注意:我用于测试的示例文档可以在以下位置找到:http://ftp.3gpp.org//Specs/archive/38_series/38.413/38413-100.zip

问题

我正在尝试使用以下代码将 MS Word 97-2003 文档 (.doc) 转换为 UTF-8 网页:

var wordApp = new Word.Application();
var doc = wordApp.Documents.Open("input.doc");
Console.WriteLine(doc.TextEncoding); // msoEncodingWestern
doc.SaveEncoding = MsoEncoding.msoEncodingUTF8;
doc.WebOptions.Encoding = MsoEncoding.msoEncodingUTF8;
doc.SaveAs2("output.htm", WdSaveFormat.wdFormatFilteredHTML, Encoding: MsoEncoding.msoEncodingUTF8);
doc.Close();
wordApp.Quit();

问题是文档包含某个字符,该字符在网页中呈现不正确:

在文档中

enter image description here

在网页中

enter image description here

(信息)手动方式

有关信息,如果我以如下手动方式执行上述操作,则箭头字符会在网页中正确呈现。

enter image description here

最佳答案

我认为您以太多不同的方式引用了编码。您应该只需要设置一次。

试试这个:

var wordApp = new Word.Application();
var doc = wordApp.Documents.Open("input.doc");
doc.Fields.Update(); // ** this is the new line of code.
Console.WriteLine(doc.TextEncoding); // msoEncodingWestern
doc.WebOptions.Encoding = MsoEncoding.msoEncodingUTF8;
doc.SaveAs2("output.htm", WdSaveFormat.wdFormatFilteredHTML);
doc.Close();
wordApp.Quit();

关于.NET MS Interop Word 不在 UTF8 网页中保存文档,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60931142/

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