我在mysql数据库中存储了字符串(英文单词+外文单词+emojis)。数据加载了 charset = 'latin1' 然后我用
charset = 'latin1'
str = str.encode('latin-1').decode('utf-8')
这样做之后,除了看起来像\u'*******'的unicode符号外,其他一切看起来都很好如果有任何帮助,我将不胜感激。
qlvxas9a1#
不要使用编码/解码,它只会增加你的痛苦。你的描述不清楚表情符号的路径。它们是否在utf-8中正确编码,但当存储到表中的latin1列时会损坏?还是别的什么?请参阅utf-8字符故障中的“最佳实践”;我看到的不是我储存的如果错误地存储到latin1列中,请参阅“字符集latin1,但其中包含utf8字节;在修复中的“字符集”时不要使用字节http://mysql.rjweb.org/doc.php/charcoll#fixes_for_various_cases
1条答案
按热度按时间qlvxas9a1#
不要使用编码/解码,它只会增加你的痛苦。
你的描述不清楚表情符号的路径。它们是否在utf-8中正确编码,但当存储到表中的latin1列时会损坏?
还是别的什么?
请参阅utf-8字符故障中的“最佳实践”;我看到的不是我储存的
如果错误地存储到latin1列中,请参阅“字符集latin1,但其中包含utf8字节;在修复中的“字符集”时不要使用字节http://mysql.rjweb.org/doc.php/charcoll#fixes_for_various_cases