gpt4 book ai didi

csv - Golang CSV 读取 : extraneous "in field error

转载 作者:数据小太阳 更新时间:2023-10-29 03:13:49 26 4
gpt4 key购买 nike

我正在使用一个简单的程序来读取 CSV 文件,不知何故,当我使用 EXCEL 或基于 Windows 的计算机 go 库创建 CSV 时,我发现无法读取它。即使我使用 cat 命令,它也只显示终端上的最后一行。它总是导致此错误 extraneous "in field

我进行了一些研究,发现它与操作系统之间的回车差异有些相关。但我真的很想问问如何制作一个通用的 csv 阅读器。我尝试使用 pandas 读取相同的 csv,并且读取成功。但是我无法使用我的 Go 代码实现这一点。

enter image description here

这里还有正确 csv 的屏幕截图

Csv is working fine

最佳答案

您的文件清楚地表明您在内容末尾有额外的引述。虽然像 pandas 这样的程序可能没问题,但我认为它不是有效的 csv 所以 go 确实会返回错误。

您的数据有什么问题的快速示例:https://play.golang.org/p/KBikSc1nzD

更新:在你的更新和一些搜索之后,我不得不道歉,回车确实很重要,似乎是这里的罪魁祸首,Go 似乎可以处理 \r\n windows 变体,但不是 \r 变体。在这种情况下,您可以做的是将 bytes.Reader 包装到自定义阅读器中,用 \n 字节替换 \r 字节。

这是一个例子:https://play.golang.org/p/vNjzwAHmtg

请注意,该示例只是一个示例,它并未处理所有可能的情况,其中 \r 可能是合法字节。

关于csv - Golang CSV 读取 : extraneous "in field error,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43214523/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com