使用rainbow csv扩展时如何读取对齐的csv文件

问题描述 投票:0回答:1

我对使用 Rainbow csv 扩展以及一般处理 csv 文件不熟悉。我使用此扩展来使我的 csv 文件更具可读性。但是,当我按下对齐并尝试读取或写入对齐的 csv 文件时,什么也没有发生。我尝试添加分隔符来忽略空格和逗号,但它没有解决问题。我只是想知道当使用 Rainbow csv 扩展名对齐 csv 文件时是否可以读取和写入,或者只是为了在 VS Code 中查看目的。

我尝试向为 csv 文件创建的读取器和写入器添加分隔符,但在文件对齐时它不起作用。当文件未对齐时,它可以在没有分隔符的情况下工作。

with open(cfg['raw_data_path'], 'r') as csvfile:
    reader = csv.reader(csvfile, delimiter= " ")

    with open(new_file_output, 'w', newline='') as csvfile:
      writer = csv.writer(csvfile, delimiter= " ")
csv vscode-extensions
1个回答
0
投票

Rainbow CSV 扩展是在 Visual Studio Code 中可视化和处理 CSV 文件的有用工具,但它主要增强了 CSV 文件的可读性以供查看。当您使用 Rainbow CSV 中的对齐功能时,它会以更易于阅读的方式格式化 CSV 数据的显示,但这不会改变 CSV 文件本身的底层结构。

要理解的要点:

查看与编辑:对齐功能用于查看,不会修改 CSV 文件的实际内容。这意味着对齐视图只是一种表示形式,不会影响以编程方式读取或写入数据的方式。

分隔符:当您在 CSV 读取器和写入器中指定分隔符时,它需要与 CSV 文件的实际结构匹配。如果您的 CSV 文件使用逗号 (,)、制表符 () 或其他字符作为分隔符,则应在代码中使用相同的分隔符。仅当您的 CSV 数据实际上以这种方式构建时,使用空格 (" ") 作为分隔符才有效,但这种情况并不常见。

空白处理:如果您尝试忽略空白,您可能需要预处理数据。 CSV 阅读器不会自动修剪空格,因此如果您的数据格式带有额外空格,您可能需要手动处理。

建议:

使用正确的分隔符:确保您使用与 CSV 文件格式匹配的正确分隔符。如果您的 CSV 以逗号分隔,请使用:

reader = csv.reader(csvfile, delimiter=",")
writer = csv.writer(csvfile, delimiter=",")

预处理数据:如果您的 CSV 包含多余空格,您可以预处理行以删除它们:

with open(cfg['raw_data_path'], 'r') as csvfile:
    reader = csv.reader(csvfile)
    processed_rows = [[cell.strip() for cell in row] for row in reader]

with open(new_file_output, 'w', newline='') as csvfile:
    writer = csv.writer(csvfile)
    writer.writerows(processed_rows)

检查文件格式:如果您不确定 CSV 文件的格式,请在文本编辑器中打开它以查看数据的结构。这将帮助您确定正确的分隔符。

测试:进行这些调整后,再次测试读写。如果您仍然遇到问题,请考虑检查代码或 CSV 文件结构中是否有任何错误。

结论:

总之,Rainbow CSV 扩展主要用于查看,不会以影响标准 CSV 库可读性的方式修改您的 CSV 文件。确保您使用正确的分隔符并正确处理代码中的任何空格,以便成功读取和写入 CSV 文件。

© www.soinside.com 2019 - 2024. All rights reserved.