【问题标题】:Converting csv to xlsx, strange out put in field headers [duplicate]将csv转换为xlsx,字段标题中出现奇怪的输出[重复]
【发布时间】:2017-08-24 15:40:55
【问题描述】:

我正在将 .csv 转换为 .xlsx。一切都很顺利,除了我不断收到这个

这是我的代码:

def create_workbook(my_csv):
    wb = Workbook()
    ws = wb.active
    with open(my_csv, 'r') as f:
        for row in csv.reader(f):
            ws.append(row)
    wb.save(my_csv[:-4] + '.xlsx')
    f.close()

我想知道是否有人遇到过类似的问题,以及他们是如何解决的。如果可能的话,我正在寻找比仅重命名列更强大的东西。

【问题讨论】:

  • 看起来像一个 BOM。我会尝试@Steve Lassop 的建议:stackoverflow.com/questions/20899939/…
  • 谢谢,csv 来自 SQL 输出,我在其中手动命名了标头。标头不总是带有 SQL 输出的 UTF-8 类型吗?

标签: python excel csv


【解决方案1】:

这更适合作为评论——在回复中:“标头不总是带有 SQL 输出的 UTF-8 类型吗?”

“SQL”中的 csv 确实特定于您用于生成文件的默认界面。一些场景:

  1. 如果您使用的 IDE 具有“输出到 csv”功能,那么您需要了解如何设置属性,以便以您想要的格式(即 utf-8)对输出进行编码。
  2. 如果你在 MySQL 中使用命令行,你会想要尝试添加 CHARACTER SET utf8 来强制输出编码。看看这个 SQL 风格的文档可能是个好主意:)

【讨论】:

    猜你喜欢
    • 2017-08-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多