我有一些代碼嘗試在ruby文件中將'false'更改爲'true',但它只在腳本運行時纔有效。切換真/假:在ruby中編輯文件
toggleto = true
text = File.read(filename)
text.gsub!("#{!toggleto}", "#{toggleto}")
File.open(filename, 'w+') {|file| file.write(text); file.close}
據我知道,只要我關閉文件,我應該能夠與我以前寫過以後閱讀它,從而改變其來回不管多少次。
較大的範圍:
def toggleAutoAction
require "#{@require_path}/options"
filename = "#{@require_path}/options.rb"
writeToggle(filename, !OPTIONS[:auto])
0
end
def writeToggle(filename, toggleto)
text = File.read(filename)
text.gsub!(":auto => #{!toggleto}", ":auto => #{toggleto}")
File.open(filename, 'w+') {|file| file.write(text); file.close}
end
def exitOrMenu
puts "Are you done? (y/n)"
prompt
if gets.chomp == 'n'
whichAction
else
exit
end
end
def whichAction
if action == 5
toggleAutoAction
else
puts "Sorry, that isn't an option...returning"
return 1
end
exitOrMenu
end
有什麼問題? –
是不是該塊後自動關閉的文件,使您的通話冗餘? –
好點,但它不能解決問題。 – JohnH