Ruby (1.8.1) -- ERRNO::EEXIST файл существует
Привет,
Так что я работаю с Руби, И...
У меня есть ошибка "ERRNO::EEXIST, text строка 2 ... Файл существует"
Ошибка возникает, если созданный им каталог (определенный в EGGPATH) уже существует, который должен работать сам по себе из-за "если File.exist?(EGGPATH)"
В то время как то, что я пытаюсь сделать, это:
def cyhm #file text Dir.mkdir(EGGPATH) unless File.exist?(EGGPATH) File.open(EGGPATH + "/CAN YOU HEAR ME.txt", "w+") do |f| f.write("text") end end def cyhm_pt2 Dir.mkdir(EGGPATH) unless File.exist?(EGGPATH) if File.exists?(EGGPATH + "/CAN YOU HEAR ME.txt") == false cyhm end File.open(EGGPATH + "/CAN YOU HEAR ME.txt", "a+") do |f| f.write("text2") end end
В то время как EGGPATH определен здесь, в другом файле:
TXTLIST = ["Ą", "ą", "Ć", "ć", "Ę", "ę", "Ł", "ł", "Ń", "ń", "Ó", "ó", "Ś", "ś", "Ź", "ź", "Ż", "ż"] #file randomtxt EGGPAT = TXTLIST[rand(TXTLIST.size)] + TXTLIST[rand(TXTLIST.size)] + TXTLIST[rand(TXTLIST.size)] + TXTLIST[rand(TXTLIST.size)] + TXTLIST[rand(TXTLIST.size)] + TXTLIST[rand(TXTLIST.size)] + TXTLIST[rand(TXTLIST.size)] + TXTLIST[rand(TXTLIST.size)] + TXTLIST[rand(TXTLIST.size)] + TXTLIST[rand(TXTLIST.size)] + TXTLIST[rand(TXTLIST.size)] if File.exists?(SAVEPATH + "\\MODAR\\eseggdir.es") == false File.open(SAVEPATH + "\\MODAR\\eseggdir.es", "w+") do |f| f.write(EGGPAT) end end EGGPATH = File.read(SAVEPATH + "\\MODAR\\eseggdir.es")
Кроме того, не говорите мне переключиться на более новую версию Ruby, потому что я работаю с RPGXP, и я не хочу менять ее в ближайшее время...
Что я уже пробовал:
Я ничего не пробовал, извините, потому что, насколько я знаю (а это не очень много), все должно работать нормально.
Richard MacCutchan
- насколько я знаю, все должно работать нормально."
Боюсь, вам еще многому предстоит научиться.
Akin0
Да, это так