我正在關注Wicked cool ruby scripts book。 這裏, 有兩個文件,file_output = file_list.txt和oldfile_output = file_list.old。這兩個文件包含程序經歷和將要經歷的所有文件的列表。 現在,如果存在'file_list.txt'文件,則該文件將被重命名爲舊文件。 然後,我無法理解代碼。Ruby - 文件 - 獲取方法
顯然文件的每一行都被讀取,並且該行存儲在oldfile散列中。 有人可以從4行解釋嗎?
此外,爲什麼在這裏使用?爲什麼不能使用每種方法來讀取每一行?
if File.exists?(file_output)
File.rename(file_output, oldfile_output)
File.open(oldfile_output, 'rb') do |infile|
while (temp = infile.gets)
line = /(.+)\s{5,5}(\w{32,32})/.match(temp)
puts "#{line[1]} ---> #{line[2]}"
oldfile_hash[line[1]] = line[2]
end
end
end
第五行在這裏做什麼? – jarvis11
這個腳本和Wicked Cool完全相反。這太糟糕了。 –
好吧,那很糟糕!請你回答下面的評論! – jarvis11