代码之家  ›  专栏  ›  技术社区  ›  Bob McBobson

在读取修改后的.csv文件时,如何解决编码错误?

  •  0
  • Bob McBobson  · 技术社区  · 4 年前

    我试图在我的网站上加载一个CSV格式的表单,但我一直碰到一个让我困惑的错误。我有一个表格,允许我上传一个.csv文件(只写utf-8,标准英文字符),我要做的就是确保只有当它有一组特定的列名时才会上传(注意:在这种情况下,列名的顺序并不重要)。

    我的代码编写如下(以及所需的列名):

    data_dictionary_csv = cleaned_data['document_file'].read().decode("utf-8-sig").splitlines()[0]
    header = data_dictionary_csv.split(',')
    column_names= ["Table Name","Column Name", "Column Description", "ValueCode","ValueDescription"]
    

    'utf-8' codec can't decode byte 0xc9 in position 1223: invalid continuation byte csv file
    

    我试过改变 .decode()

    0 回复  |  直到 4 年前
        1
  •  0
  •   Bob McBobson    4 年前

    事实证明,当您创建一个要使用.csv的新Excel文件时,需要使用UTF-8编码将其显式保存为.csv。在我以前的方法中,我认为我保存它的方式有所不同,这导致文件的配置略有不同。格式不正确的.csv文件现在可以上载并引发正确的错误。