gpt4 book ai didi

ruby - 如何在 Ruby 中检测和处理不同的 EOL?

转载 作者:数据小太阳 更新时间:2023-10-29 08:29:02 25 4
gpt4 key购买 nike

我正在尝试处理可以使用 CF 或 LF 作为 EOL 标记生成的 CSV 文件。当我尝试用

读取文件时
infile = File.open('my.csv','r')
while line = infile.gets
...

整个 20MB 文件被读入一行。

如何正确检测和处理?

TIA

最佳答案

我会 slurp 文件,规范化输入,然后将其提供给 CSV:

raw = File.open('my.csv','rb',&:read).gsub("\r\n","\n")
CSV.parse(raw) do |row|
# use row here...
end

由于 slow file reads on Windows Ruby,以上使用 File.open 而不是 IO.read .

关于ruby - 如何在 Ruby 中检测和处理不同的 EOL?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6154587/

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