1
考慮下面的代碼:使用File.new在Ruby中「打開」文件意味着什麼?
file = File.new('file1.txt', 'w')
# write data to the file
file.close
,當你決定使用File.new方法調用打開Ruby的文件是什麼意思。我理解file = File.new,如果沒有創建,創建file1.txt,並在最開始寫入,但從操作系統的角度來看沒有任何事情發生。它只是被創建,並且可以稍後通過文本編輯器或Ruby提示進行訪問。沒有文件通過文本編輯器或任何東西打開。
隨後它必須關閉,所以我不明白如何關閉文件,當沒有真正從操作系統的角度打開。
有人可以闡明文件如何「打開」,然後「關閉」?
雖然它不是特定於Ruby的,但請看看[這個存在的問題]的答案(http://stackoverflow.com/questions/33495283/what-does-opening-a-file-actually-do)是有幫助的。 – mikej
我不明白。你說:「它只是被創建,並且可以在以後通過文本編輯器或通過Ruby提示進行訪問。」並且「從操作系統的角度來看,沒有任何東西可以打開」。你也可以在代碼中寫入'#將數據寫入文件'註釋,但是如何在「沒有任何東西真的被打開」時將數據寫入文件? 'File.new'確實會打開文件(必要時創建文件後),這就是爲什麼您可以寫入文件的原因。 –
更具體地說,它從哪裏開放?它沒有出現在我的操作系統上(任何活動的程序,至少我可以從我的任務欄中看到,如果有幫助,使用Windows)。 – the12