将文本框的内容写入 Shoes.rb 中的文件
Write contents of textbox to file in Shoes.rb
我一直在研究文本编辑器 ruby,但 运行 遇到了问题。
我可以很好地打开文件,但是当我尝试保存文件时,我无法将文本框的内容写入文件。
Shoes.app :title => "Reditr", :width => 640, :height => 430 do
@box = edit_box :width => 1.0, :height => 400, :text =>'Welcome to Reditr!'
button "Save", :width => 85 do
file = ask_save_file
File.open(file, "w+") do |f|
@file.text = File.write(@box.text)
end
end
button "Open", :width => 75 do
@file = ask_open_file
@box.text = File.read(@file)
@filename.text = @file
end
end
我对鞋子的使用感到生疏,但你的 File.open
似乎有点不对劲。当您使用 .open
打开文件时,该文件将传递到代码块中。因此,在这种情况下,f
是您要写入的文件。您可能正在寻找类似的东西:
File.open(file, "w+") do |f|
@file.text = f.write(@box.text)
end
我一直在研究文本编辑器 ruby,但 运行 遇到了问题。 我可以很好地打开文件,但是当我尝试保存文件时,我无法将文本框的内容写入文件。
Shoes.app :title => "Reditr", :width => 640, :height => 430 do
@box = edit_box :width => 1.0, :height => 400, :text =>'Welcome to Reditr!'
button "Save", :width => 85 do
file = ask_save_file
File.open(file, "w+") do |f|
@file.text = File.write(@box.text)
end
end
button "Open", :width => 75 do
@file = ask_open_file
@box.text = File.read(@file)
@filename.text = @file
end
end
我对鞋子的使用感到生疏,但你的 File.open
似乎有点不对劲。当您使用 .open
打开文件时,该文件将传递到代码块中。因此,在这种情况下,f
是您要写入的文件。您可能正在寻找类似的东西:
File.open(file, "w+") do |f|
@file.text = f.write(@box.text)
end