我正在将部分XHTML转换为JSON对象。我最终得到了JSON形式的所有内容,但一些UTF-8字符代码被打印出来了。例如:
{
"p": {
"@class": "para-p",
"#text": "I\u2019m not on Earth."
}
}
这应该是:
{
"p": {
"@class": "para-p",
"#text": "I'm not on Earth."
}
}
这只是UTF-8代码的一个例子。我如何才能通过字符串并将UTF-8代码的每个示例替换为它所代表的字符呢?
2条答案
按热度按时间sgtfey8w1#
\u2019
不是UTF-8字符,而是Unicode转义码。它是有效的JSON,通过json.load
读回时将变为’
(右单引号)。如果要写入实际字符,请使用
ensure_ascii=False
来防止为非ASCII字符写入转义码:yjghlzjz2#
您没有粘贴代码,所以我不知道您是如何将XHTML转换为JSON的。我假设您在Python对象中以十六进制值字符结束。这个
\u2019
是一个具有16位十六进制值的单个字符。默认情况下JSON模块可以处理这个问题。例如,json.loads
方法可以解决这个问题:输出显示: