java - utf-8 不可见字符

标签 java mysql perl utf-8

我有一个网站,需要将文本字段中的数据存储到 mysql 数据库中。 前端是perl。我使用 utf8::encode 将数据编码为 utf8。

向连接到 mysql 数据库并插入此文本的 Java 后端发出请求。 对于该表,默认字符集设置为 utf8。 这在很多情况下都有效,但在某些情况下会失败。

如果我使用テスト,数据库中存储的数据显示问号:ã??ã?¹ã??。 如果我尝试直接从 sql 浏览器插入 utf8 编码的字符串,一切正常。 更新事件集 summary = ãã¹ã where event_id = 11657;

插入时,我注意到 mysql 查询浏览器中显示了一些空白字符,例如:ã ã¹ ã。 从这里插入后,数据库中的数据显示数据库中的一些框而不是这些空格,テスト经过utf8解码后在网站上正确显示。 问题是当我直接从网站插入时,这些特殊字符在数据库中以问号的形式出现。

有人可以帮我解决这些特殊字符吗?我需要以不同的方式处理它们吗?

最佳答案

我们在其中一个项目中也遇到了类似的问题。所以我们不得不编写一个小例程将那些 utf8 字符转换为 html 编码 并存储到数据库中.

关于java - utf-8 不可见字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10891831/

相关文章:

linux - Perl:如何在解压缩 tar.gz 文件时创建新目录

java - Spring中如何配置HtmlUnit请求的重试次数?

java - 使 OS X 屏幕 JMenuBar 跨窗口一致工作的最佳方法是什么?

PHP Mysql逻辑循环遍历表并优化输出

mysql - 由于在 MySQL 中使用保留字作为表名或列名而导致的语法错误

perl - 如何在 Perl 中引用打印?

perl - 从 Perl 文件中删除包含非 ASCII 字符的行

java - 点击“设置”时动态壁纸崩溃

java - 从 Java 访问 Pervasive/Btrieve DB(DDF + DAT 文件)

mysql - 使用插入时使用触发器更新数据库