Utf 8 字符编码交叉引用

Utf 8 字符编码交叉引用,utf-8,character-encoding,ascii,iso-8859-1,cross-reference,Utf 8,Character Encoding,Ascii,Iso 8859 1,Cross Reference,我刚刚将一个包含拉丁美洲地名的数据库从MS Access迁移到MySQL。在此过程中,的每个实例都已更改为——。我的问题是: 是否存在某种类型的参考来查找哪个字符编码已被转换为哪个字符编码?例如,在一个地方,我可以输入一个字符,并查看在各种错误编码转换(例如,ASCII到ISO 8859-1、ISO 8859-1到UTF-8等)后它将如何被误传?我不知道,但如果您有一个可能的编码列表,您可以编写一个简单的程序,如: for x in ENCODINGS: for y in ENCODIN

我刚刚将一个包含拉丁美洲地名的数据库从MS Access迁移到MySQL。在此过程中,的每个实例都已更改为——。我的问题是:


是否存在某种类型的参考来查找哪个字符编码已被转换为哪个字符编码?例如,在一个地方,我可以输入一个字符,并查看在各种错误编码转换(例如,ASCII到ISO 8859-1、ISO 8859-1到UTF-8等)后它将如何被误传?

我不知道,但如果您有一个可能的编码列表,您可以编写一个简单的程序,如:

for x in ENCODINGS:
    for y in ENCODINGS:
        try:
            if 'á'.encode(x) == '‡'.encode(y):
                print(x, '→', y)
        except UnicodeError:
            pass
这样做,在您的情况下,原始编码似乎是:

  • mac_阿拉伯语
  • 马克西图罗
  • 克罗地亚人
  • 马库波斯语
  • 冰岛马丘酒店
  • mac_拉丁语2
  • 麦克罗马
  • 罗马尼亚语
  • 土耳其语
而被误解的编码是:

  • cp1250
  • cp1251
  • cp1252
  • cp1253
  • cp1254
  • cp1255
  • cp1256
  • cp1257
  • cp1258
  • 帕尔莫斯

如果你生活在“西部”地区,那么麦克罗马→ cp1252是最有可能的可能性。

我不知道,但是如果您有一个可能的编码列表,您可以编写一个简单的程序,如:

for x in ENCODINGS:
    for y in ENCODINGS:
        try:
            if 'á'.encode(x) == '‡'.encode(y):
                print(x, '→', y)
        except UnicodeError:
            pass
这样做,在您的情况下,原始编码似乎是:

  • mac_阿拉伯语
  • 马克西图罗
  • 克罗地亚人
  • 马库波斯语
  • 冰岛马丘酒店
  • mac_拉丁语2
  • 麦克罗马
  • 罗马尼亚语
  • 土耳其语
而被误解的编码是:

  • cp1250
  • cp1251
  • cp1252
  • cp1253
  • cp1254
  • cp1255
  • cp1256
  • cp1257
  • cp1258
  • 帕尔莫斯

如果你生活在“西部”地区,那么麦克罗马→ cp1252是最有可能的可能性。

可能不是。您可能应该寻找一种方法来修复MySQL数据库中的数据。如果您只是想看到误译的发生,请使用文本查看器,让您选择用于读取文件的编码,对吗?可能不会。您可能应该寻找一种方法来修复MySQL数据库中的数据。如果您只是想看到误译的发生,请使用文本查看器来选择用于读取文件的编码,对吗?