【问题标题】:How to fix this bullet issue如何解决此项目符号问题
【发布时间】:2017-05-09 07:15:40
【问题描述】:

在我的网站中,管理员上传了一个.docx 文件。我使用OpenXmlPowerTools Api 将文件转换为xml

问题是文档中有一些项目符号。

• 这是我在文档中的项目符号 1。
• 这是我在文档中的要点 2。

XElement html = OpenXmlPowerTools.HtmlConverter.ConvertToHtml(wDoc, settings);
var htmlString = html.ToString();
File.WriteAllText(destFileName.FullName, htmlString, Encoding.UTF8);

现在,当我打开 xml 文件时,它会将项目符号呈现如下:-

我需要读取 XML 的每个节点并保存在数据库中并从节点重建 html。

请不要问我为什么,因为我不是系统的老板。

如何让项目符号在 xml 中正确渲染,以便我可以保存正确的 html在数据库中?

【问题讨论】:

  • 通常使用方形字符,然后从文件中读取的数据无法正确转换为给定的字符集。如果 ConvertToHtml 正在使用错误的编码读取文档,或者 wDoc(不知道那是什么)可能正在使用错误的编码读取文件,则可能会发生这种情况。可能传递给 ConvertToHtml 的设置有一些编码选项?

标签: c# asp.net xml-parsing openxml


【解决方案1】:

我已经为我的要求解决了同样的问题,并且到目前为止没有问题。

在这种情况下,您总是需要尝试解决方法,即复制此字符并在您的输入/读取字符串等中进行比较。如果找到,然后将其替换为等效的 html 编码字符。在您的情况下,它将是项目符号列表字符“ampersandbull;”或“和号#8226;” .

代码应该是这样的

listItem == "Compare with your copied character like one in your pic" ? "•" : listItem

您可以在此链接中找到更多等效字符:

http://www.zytrax.com/tech/web/entities.html

【讨论】:

    【解决方案2】:

    嘿,我不认为 XML 可以读取项目符号。我会建议你以编程方式处理它。尝试调试并查看正方形表示的内容,然后执行 if 语句以找到它并将其替换为您可以定义的代码,这样当您返回它以使用它时,您可以将该代码转换为项目符号。

    【讨论】:

      猜你喜欢
      • 2011-09-14
      • 2021-05-13
      • 2010-11-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多