Zest、 2022-04-08 22:21 采纳率: 100%
浏览 44
已结题

Json转CSV格式中文乱码



import json
import csv

"""
需求:将json中的数据转换成csv文件
"""
def csv_json():
    # 1.分别 读,创建文件
    json_fp = open("poet.song.0.json", "r",encoding='utf-8')
    csv_fp = open("result.csv", "w",encoding='utf-8',newline='')

    # 2.提出表头和表的内容
    data_list = json.load(json_fp)
    # sheet_title = data_list[0].keys()
    sheet_title = {"诗人","诗","编号"}  # 将表头改为中文
    sheet_data = []
    for data in data_list:
        sheet_data.append(data.values())

    # 3.csv 写入器
    writer = csv.writer(csv_fp)

> 
> 
    # 4.写入表头
    writer.writerow(sheet_title)

    # 5.写入内容
    writer.writerows(sheet_data)

    # 6.关闭两个文件
    json_fp.close()
    csv_fp.close()


if __name__ == "__main__":
    csv_json()

用以上代码,工作区的文件是正常的,写入的文件乱码。

  • 写回答

1条回答 默认 最新

  • GavinHaydy 2022-04-08 22:38
    关注
    # 把12行的encoding改一下试试
    encoding='utf-8-sig'
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 4月16日
  • 已采纳回答 4月8日
  • 创建了问题 4月8日

悬赏问题

  • ¥15 如何在node.js中或者java中给wav格式的音频编码成sil格式呢
  • ¥15 不小心不正规的开发公司导致不给我们y码,
  • ¥15 我的代码无法在vc++中运行呀,错误很多
  • ¥50 求一个win系统下运行的可自动抓取arm64架构deb安装包和其依赖包的软件。
  • ¥60 fail to initialize keyboard hotkeys through kernel.0000000000
  • ¥30 ppOCRLabel导出识别结果失败
  • ¥15 Centos7 / PETGEM
  • ¥15 csmar数据进行spss描述性统计分析
  • ¥15 各位请问平行检验趋势图这样要怎么调整?说标准差差异太大了
  • ¥15 delphi webbrowser组件网页下拉菜单自动选择问题