似乎我正在使用的数据库有两个非打印字符,这些字符使某些内容混乱。进行一些挖掘之后,计算机将其显示为â,然后显示为U + 0080,然后显示为U + 0093。
知道这些字符可能意味着什么吗?我怀疑它来自Unicode的内容转换不正确。但是我不知道如何翻译。
答案 0 :(得分:1)
â
的Unicode代码点是U + 00E2。 E2 80 93
是连字符的UTF-8序列,特别是U+2013 EN DASH
。
如果UTF-8编码的数据被错误地解码为ISO-8859-1(也称为“ latin1”),则会按照您的描述显示。这是Python中的示例:
>>> print('\u2013') # Displays U+2013 EN DASH
–
>>> '\u2013'.encode('utf8') # byte sequence of UTF-8-encoded EN DASH
b'\xe2\x80\x93'
>>> '\u2013'.encode('utf8').decode('latin1') # decoded incorrectly
'â\x80\x93'
答案 1 :(得分:0)
找到一个为我描述的网站。 https://www.compart.com/en/unicode/U+2012#UNC_DB
数字与UTF-8编码中显示的数字匹配。