【问题标题】:SgmlReader and System.Xml Windows 8SgmlReader 和 System.Xml Windows 8
【发布时间】:2012-11-25 06:28:00
【问题描述】:

我正在尝试使用 SgmlReader 将 HTML 流转换为 XML 以进行进一步解析。此转换是我正在为 Windows 8 应用商店开发的 APP 的一部分。下面是将 Html 转换为 XML 的方法:-

public static void ConvertToXml(string webResponse)
    {
        StringWriter sWriter = new StringWriter();
        XmlWriter xmlWriter = XmlWriter.Create(sWriter);
        SgmlReader sgmlReader = new SgmlReader();
        sgmlReader.DocType = "HTML";
        sgmlReader.WhitespaceHandling = WhitespaceHandling.All;
        sgmlReader.CaseFolding = CaseFolding.ToLower;
        sgmlReader.InputStream = new StringReader(webResponse);
        sgmlReader.IgnoreDtd = true;
        while (!sgmlReader.EOF)
        {
            xmlWriter.WriteNode(sgmlReader, true);
        }
        xmlWriter.Flush();
        XmlString = sWriter.ToString();
    }

sgmlReader.WhitespaceHandling = WhitespaceHandling.All;是 Xml.WhitespaceHandling 不存在的问题。有没有其他方法可以做到这一点?

【问题讨论】:

    标签: windows-8 sgmlreader


    【解决方案1】:

    经过大量阅读和测试/调试后,我发现至少在我的情况下不需要 sgmlReader.WhitespaceHandling = WhitespaceHandling.All,因为 sgmlReader.WhitespaceHandling 默认设置为 All。但是我删除了 sgmlReader.IgnoreDtd = true;现在我的 Xml 文件看起来很正常;)

    希望这会对某人有所帮助

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-07-20
      • 1970-01-01
      • 1970-01-01
      • 2023-04-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多