我的意思是,我这个JSON数据,是从mysql数据库中查询到的,里面的中文变成了乱码,怎么显示原来的中文
时间: 2024-03-27 22:35:52 浏览: 48
node使用mysql获取数据库数据中文乱码问题的解决
如果你查询到的 JSON 数据中的中文出现了乱码,可能是因为编码问题导致的。你可以尝试在查询数据时,将编码设置为 UTF-8,例如:
```
import mysql.connector
import json
# 建立数据库连接
cnx = mysql.connector.connect(user='your_username', password='your_password',
host='your_host', database='your_database', charset='utf8')
# 查询数据
cursor = cnx.cursor()
query = "SELECT * FROM your_table"
cursor.execute(query)
# 将查询结果转换为 JSON 格式
result = []
for row in cursor:
row_dict = {}
for i, col in enumerate(cursor.column_names):
row_dict[col] = row[i]
result.append(row_dict)
json_data = json.dumps(result, ensure_ascii=False)
# 关闭数据库连接
cursor.close()
cnx.close()
# 输出 JSON 数据
print(json_data)
```
这里的 `charset='utf8'` 参数设置了编码为 UTF-8,`ensure_ascii=False` 参数指定输出的 JSON 数据中的中文不进行 ASCII 编码,从而显示原来的中文。
阅读全文