utf-8和ISO-8859-1字符集之间的奇怪字符问题.需要解释


Strange character issue between utf-8 and ISO-8859-1 character sets. Need explanation

奇怪的字符显示为�虽然我的页面编码是utf-8,但如果编码是ISO-8859-1,那么它工作得很好。我将数据存储在mysql数据库中,列编码为utf-8,连接编码为utf-8。诸如CCD_ 1之类的所有其它字符都被正确地示出并且被相同地存储在数据库中。

有人能解释一下这是哪个字符以及如何删除它吗?

谢谢。

U+FFFD是一个替换字符,用于替换未知或不可打印的字符。基本上,这意味着你试图展示一个无法打印的字符。

也许这将为如何进行提供一些指导:如何处理用户输入的无效UTF-8字符?

有人能解释一下这个是哪个字符吗

由于你只向我们展示了"未知角色"角色,而不是有效的角色,这将很棘手。

如何删除

不要删除任意数据。选择您正在使用的字符编码并坚持使用。如果您正在使用UTF-8,请始终使用UTF-8。不要在将UTF-8视为UTF-8和将其视为ISO-8859-1之间切换,那样会很疯狂。