java - 将国际字符从 MySQL 输出到 Java/Android

标签 java android mysql utf-8

假设有人使用这个字母:ë。他们将其输入到 EditText 框中,并正确存储在 MySQL 数据库中(通过 php 脚本)。但是,用该特殊字符捕获数据库字段会导致 Java/Android 中输出“null”。

看来我的数据库已正确设置和存储。但找回是个问题。我必须在 PHP 端修复这个问题还是在 Java/Android 中处理它? 编辑:我认为这与 PHP 方面不再有任何关系,所以我对 Java 方面更感兴趣。

最佳答案

听起来类似于:android, UTF8 - How do I ensure UTF8 is used for a shared preference

我怀疑问题发生在 Web 服务和 Android 应用程序之间的 Web 界面上。一侧发送 UTF-16 或 ISO 8859-1 字符,另一侧将其解释为 UTF-8(反之亦然)。确保:

  • 来自 Android 的网络请求使用 UTF-8
  • 网络服务使用 UTF-8 进行回复。

与另一个答案一样,使用 HTTP 调试代理来检查 Android 应用程序和 Web 服务之间发送的字符是否符合您的预期。

关于java - 将国际字符从 MySQL 输出到 Java/Android,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13389931/

相关文章:

php - 从数组中查找与 cookie 不匹配的值

mysql - 带条件的 Hibernate Select 查询

java - 计算字符串中的空格数

android - Google Drive PDFViewer 未加载 PDF 文件

java - 没有类型转换的Java编译器如何在子类中调用正确的equals()函数?

java - Facebook 登录错误 "disabled Oauth client flow"但我已启用它

php - 来自包含空格的 URL 的 $_GET 值

java - 谁将设置包含凭据信息的 saml cookie

java - 使用 Maven 时如何更改 Eclipse 中的默认测试位置?

java - 属性 java.protocol.handler.pkgs