Ruby将字符串转换为文件

时间:2010-01-19 14:51:21

标签: ruby string file

是否可以将字符串转换为文件而无需将其写入磁盘?

我想无处不在地使用一个文件串:

input = "123"
if (ARGV.length == 1)
   input = File.open(ARGV[0])

   #do stuff with input
end

我可以从字符串创建文件(无需写入磁盘)吗?否则,当它是一个字符串时,我将无法input.readline()

3 个答案:

答案 0 :(得分:32)

您可以使用StringIO1.8.71.9.3)来创建IO1.8.71.9.3)对象(即,字符串中的一个对象(如文件):

file = StringIO.new("123")
line = file.readline
file.close

答案 1 :(得分:5)

StringIO可用于为字符串提供类似文件的界面。

答案 2 :(得分:2)

StringIO很不错,您也可以使用块来执行此操作:

StringIO.open(string) do |file|
  # do stuff here
end

我喜欢这个alt file.close