ruby - 如何将 Ruby 数组导出到单个 csv 行中?
问题描述
我希望将数组作为单行传递到 csv 中。下面的代码展示了我目前正在尝试的内容。该数组的长度是可变的,将展示类似的内容。
a = ["website url", "page link", "page link", "page link"]
代码本质上是使用 open-uri 进入一个页面并刮掉每个页面的链接。这用于内部验证并根据我们的预期进行检查。如果链接与我们期望的匹配,它会作为上面显示的页面链接变量报告到 csv 中。
我目前尝试使用 to_csv 来格式化数据,但在 csv 中,所有内容都在一行中,包括我的逗号分隔符。
def dwrite (array)
CSV.open("filename.csv", "ab") do |csv|
data = array.to_csv(row_sep: nil)
csv << [data]
end
end
这是 csv 在单个列中的示例:
https://www.url.com/example-page.html
#,
#,,
#,,,
#,,,,
#,,,,,
#,,,,,,
#,,,,,,,
#,,,,,,,,
#,,,,,,,,,
#,,,,,,,,,,
#,,,,,,,,,,,
#,,,,,,,,,,,,
#,,,,,,,,,,,,,
#,,,,,,,,,,,,,,
#,,,,,,,,,,,,,,,
https://anotherexamplepage.html
我希望传递给该方法的每个数组元素都会在同一行显示,但事实并非如此。任何帮助将非常感激。
解决方案
您不需要以任何方式转换数组。只需将其添加到 CSV:
def dwrite(array)
CSV.open("filename.csv", "ab") do |csv|
csv << array
end
end
推荐阅读
- javascript - 我的 h1 标签字体系列突然从 css 中的原始字体系列改变了
- javascript - JQueryUi 自动完成组合框有时无法在 Firefox 中正确加载
- database - Laravel - 在 config/database.php 中做逻辑
- sql - 使用分组和聚合函数
- jmeter - HTTP 请求包含等于复选框不能取消选中
- sharepoint - 如何在 SharePoint Online 中减小英雄横幅 webpart 的大小?
- java - 使用 multipart 上传多个图像时出错
- java - 如何从 DSpace-CRIS 中的不同元数据中收集有关 CRIS 实体的数据?
- c - Libcurl:无法连接到 www.google.fr 连接被拒绝
- angular - 如何为 Angular SPA 实现缓存