如何在 ruby 中逐行读取文本文件(将其托管在 s3 上)?
我知道我以前已经这样做过,并找到了一组简单的代码,但我不记得或找不到它:(。
我有一个记录文本文件,我想导入到我的 Rails 3 应用程序中。
每一行代表一条记录。可能它可能是属性的制表符分隔,但也可以只使用单个值,
我该如何做到这一点?
I know I've done this before and found a simple set of code, but I cannot remember or find it :(.
I have a text file of records I want to import into my Rails 3 application.
Each line represents a record. Potentially it may be tab delimited for the attributes, but am fine with just a single value as well.
How do I do this?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(5)
相关主题
在 Ruby 中读取文件的所有常见方法有哪些?
Related topic
What are all the common ways to read a file in Ruby?
您想要
IO.foreach
:或者,如果它确实是制表符分隔的,您可能需要使用 CSV 库:
You want
IO.foreach
:Alternatively, if it really is tab-delimited, you might want to use the CSV library:
您是否尝试过使用
OpenURI
(http://ruby-doc.org/stdlib-2.1.2/libdoc/open-uri/rdoc/OpenURI.html)?您必须使您的文件能够从 S3 访问。或者尝试使用 de
aws-sdk
gem (http://aws.amazon .com/sdk-for-ruby)。Have you tried using
OpenURI
(http://ruby-doc.org/stdlib-2.1.2/libdoc/open-uri/rdoc/OpenURI.html)? You would have to make your files accessible from S3.Or try using de
aws-sdk
gem (http://aws.amazon.com/sdk-for-ruby).您可以使用 OpenURI 读取远程或本地文件。
假设您的模型有一个名为
file
的附件:You can use OpenURI to read remote or local files.
Assuming that your model has an attachment named
file
: