results = open('names.txt').map { |line| line.split(' ')[0]}
p results
n = "Names_In_Array.txt"
outfile = File.new(n, 'w')
outfile.puts(results)
outfile.close
我试图在每个名称后添加引号和逗号,所以我有一个数组格式(除了括号)。在当前状态下,它将其保存回纯字符串。
听起来你想要一个像这样的文件:
ben john joe adam mike bob
并将其序列化为对象结构以供以后阅读。
如果是这种情况,我建议你看看YAML。它内置在 Ruby 中,使读取和写入数据结构变得容易。例如:
require 'yaml'
names = File.read('names.txt').split(' ')
File.open('Names_In_Array.txt') {|f| f << YAML::dump(names)}
您生成的文件可以在后续程序中读取
names = YAML::load(File.open('Names_In_Array.txt'))
如果理解正确:
outfile.puts(results.map{ |m| "\'#{m}\'" }.join(', '))