gpt4 book ai didi

Ruby 写入内存中的文件(实际上不是写入文件)

转载 作者:行者123 更新时间:2023-12-05 06:42:36 27 4
gpt4 key购买 nike

所以我有这个程序可以传递一个字符串(这个字符串是它应该读取的文件的路径)

现在我有了一个必须打开该文件的方法。使用 Gsub 更改文本,然后再次输出该文件(无法编辑原始文件),但我最终需要输出更改后的文件

这是我用来更改我的文件的方法(简化)

def self.changeFile(myfile)
myfile = @path

doc = File.open(myfile)
text = doc.read

text.gsub!("change" , "changed")

return text

问题是我得到了整个文件作为返回的字符串。我的其他方法使用“字符串”路径名的输入

所以我的问题是,我是否可以将我的文本写入我在内存中更改的文件,而无需实际更改原始文件?

我正在考虑使用“Tempfile”或“StringIO”,但我不知道这样做是否正确

感谢所有帮助

最佳答案

你可以为此使用寺庙:

def self.changeFile(myfile)
myfile = @path
tempfile = Tempfile.new("changed")
tempfile << File.open(myfile).read.gsub("change" , "changed")
tempfile.close
tempfile.path
end

关于Ruby 写入内存中的文件(实际上不是写入文件),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36496759/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com