【问题标题】:Weird characters in html webviewhtml webview中的奇怪字符
【发布时间】:2012-10-15 15:55:27
【问题描述】:

我正在开发一个打开网页的 android 项目。如果用户没有互联网连接,我有一个听众。我没有显示标准的“找不到页面”,而是为 webview 提供了一个存储在我的资产文件夹中的本地 html 文件。通过这行代码:

web.loadUrl("file:///android_asset/html/404error.html");

在 HTML 文件中我认为编码是什么?是“utf-8”,如果相关的话,它会用 javascript 说明。

一切正常,除了显示“ÅÄÖ”时,所有这些字符都被替换为“?”

有人知道解决办法吗?

谢谢!

【问题讨论】:

  • “它用 javascript 表达了一些东西” - 分享一下怎么样?

标签: java android html utf-8 webview


【解决方案1】:

需要告知浏览器/Webview 文档是什么编码,否则它会猜测某种编码或使用默认编码,这可能是错误的。通常,您使用 HTTP 标头传达编码。如果您从本地存储打开文件,显然不涉及 HTTP。因此,您需要使用

在文档标题本身中指定编码
<meta http-equiv="Content-Type" content="text/html; charset=ENCODING HERE">

或者,对于 HTML 5 文档:

<meta charset="ENCODING HERE">

确保声明与文档的实际编码方式相匹配。

【讨论】:

    【解决方案2】:

    最近我也遇到了和你现在一样的问题。我通过将 HTML 文件中的特殊字符更改为它们各自的 HTML 代码来解决它。您可以在 google 上获取特殊字符的所有相应 HTML 代码,但 link 可能会对您有所帮助。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-09-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-02-27
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多