我想将以下代码解析为 html 代码并显示在WebView
. 这工作正常,但是...
要解析的代码:
<img src="http://...jpeg" alt="„Indoor Maps“ von Google" align="left" style="padding-right:5px">\n\n\nEinfachere Navigation in Gebäuden verspricht Indoor Maps von Google. Der Praxis-Test von COMPUTER BILD im Hamburger „Alsterhaus“ verlief aber kurios.<br>Foto: ComputerBILD<br>
尝试 1) Html.toHtml(Code)
- 文本的变音符号和引号被解析得很好并且 img-tag 仍然有效(引号)。但是删除了一些 img 属性,例如alt
和align
。结果:
<p><img src="http://...jpeg"> Einfachere Navigation in Gebäuden verspricht Indoor Maps von Google. Der Praxis-Test von COMPUTER BILD im Hamburger „Alsterhaus“ verlief aber kurios.<br>\nFoto: ComputerBILD<br>\n</p>\n
尝试 2) external library: org.apache.commons.lang3.StringEscapeUtils.escapeHtml4(Code)
- 解析的所有变音符号和引号。img-tag 因解析引号而损坏。现在我无法在WebView
. 未删除的 img-tags。结果:
<img src="http://...jpeg" alt="„Indoor Maps“ von Google" align="left" style="padding-right:5px">\n\n\nEinfachere Navigation in Gebäuden verspricht Indoor Maps von Google. Der Praxis-Test von COMPUTER BILD im Hamburger „Alsterhaus“ verlief aber kurios.<br>Foto: ComputerBILD<br>
我知道这个类别的帖子很多,但是我找不到解析html代码的帮助,也不要“触摸”属性的引号。我卡住了。
编辑
这是完整的 HTML 代码
StringBuilder html = new StringBuilder();
html.append("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\" \"http://www.w3.org/TR/html4/loose.dtd\">");
html.append("<html>");
html.append("<head>");
html.append("<meta http-equiv=\"Content-Type\" content=\"text/html; charset=ISO-8859-1\">");
html.append("<title></title>");
html.append("</head>");
html.append("<body bgcolor=\"white\" leftmargin=\"0\" topmargin=\"0\">");
html.append(CODE AT THE TOP);
html.append("</body>");
html.append("</html>");
当我使用 UTF-8 时,我得到了相同的结果......
webView.loadData(html.toString(), "text/html", "iso-8859-1");
@Christiaan:这是当前结果,当我将未解析的代码设置为WebView