小编Use*_*352的帖子

C# 编码 Shift-JIS 与 utf8 html 敏捷包

我有个问题。我的目标是将一些文本从(日语 Shift-JS 编码)html 保存到 utf8 编码的文本文件中。但我真的不知道如何对文本进行编码。HtmlNode 对象是用 Shift-JS 编码的。但在我使用 ToString() 方法后,内容已损坏。到目前为止我的方法如下所示:

public String getPage(String url)
    {
        String content = "";

        HtmlDocument page = new HtmlWeb(){AutoDetectEncoding = true}.Load(url);
        HtmlNode anchor = page.DocumentNode.SelectSingleNode("//div[contains(@class, 'article-def')]");

        if (anchor != null)
        {
            content = anchor.InnerHtml.ToString();
        }
        return content;
    }
Run Code Online (Sandbox Code Playgroud)

我试过

Console.WriteLine(page.Encoding.EncodingName.ToString());
Run Code Online (Sandbox Code Playgroud)

并得到:日语 Shift-JIS 但是将 html 转换为字符串会产生错误。我认为应该有一种方法,但由于 html-agility-pack 的文档很少,而且我无法通过谷歌真正找到解决方案,所以我在这里也得到了一些提示。

html c# encoding html-agility-pack

1
推荐指数
1
解决办法
1413
查看次数

标签 统计

c# ×1

encoding ×1

html ×1

html-agility-pack ×1