如果我有一个字符串数组,例如.

a = ['a', 'b', 'c', 'd']

我想把元素输出到一个文件(例如,txt),每行一个.到目前为止,我已经:

File.new("test.txt", "w+")
File.open("test.txt", "w+") do |i|
    i.write(a)
end

这给了我一行测试中的array.txt文件.

推荐答案

使用Array#each在数组中迭代,并调用IO#puts将每个元素写入文件(puts添加记录分隔符,通常是换行符):

File.open("test.txt", "w+") do |f|
  a.each { |element| f.puts(element) }
end

或者将整个数组传递到puts:

File.open("test.txt", "w+") do |f|
  f.puts(a)
end

从文件中:

如果使用数组参数调用,则将每个元素写入新行.

Ruby相关问答推荐

Ruby 中无法解释的撬动行为

查看 Savon 请求 XML 而不发送到服务器

如何判断 Ruby 文件是否为空?

如何在Ruby中从字符串中go 除前导和尾随引号

如何按长度对 Ruby 字符串数组进行排序?

如何在 Ruby 中初始化 Hash 中的数组

Ruby:如何卸载设计(uninstall Devise)?

在 Ruby 中将数组转换为索引哈希

什么时候在 Ruby 中使用 Struct 比使用 Hash 更好?

格式化 Ruby 的漂亮打印

读取文件时如何避免 UTF-8 BOM

Ruby 中的 $1 和 \1

是否可以使用 Ruby 读取文件的修改日期?

了解 ruby​​-prof 输出

何时使用在 Ruby 中启动子进程的每种方法

Ruby 中的 to_s 与 to_str(以及 to_i/to_a/to_h 与 to_int/to_ary/to_hash)

使用正则表达式进行 Ruby Electron邮件验证

您的 Ruby 版本是 2.0.0,但您的 Gemfile 指定了 2.1.0

Ruby:如何为数组和哈希制作 IRB 打印 struct

Ruby:是否可以在模块中定义类方法?