1
如何處理錯誤,我在紅寶石fileutils中的CD
使用文件實用程序方法時,使用時有麻煩。
問題是當我嘗試訪問 不存在的目錄時,如何防止我的ruby腳本停止?
我發現這一點:
FileUtils.cd('/', :verbose => true) # chdir and report it
,但它不工作,或者至少我不知道怎樣的語法著作!
如何處理錯誤,我在紅寶石fileutils中的CD
使用文件實用程序方法時,使用時有麻煩。
問題是當我嘗試訪問 不存在的目錄時,如何防止我的ruby腳本停止?
我發現這一點:
FileUtils.cd('/', :verbose => true) # chdir and report it
,但它不工作,或者至少我不知道怎樣的語法著作!
您的腳本「劇烈結束」,因爲FileUtils.cd
在目錄不存在時會引發異常。因爲你的腳本不處理異常,所以它退出。
包裝你的代碼在begin
- rescue
- 塊這樣來處理異常:
require 'fileutils'
begin
FileUtils.cd "A/non/existing/directory"
rescue Errno::ENOENT => e
# do things for appropriate error handling
puts e.message
end
當目錄更改失敗的Errno::ENOENT
拋出異常。在rescue
塊中,你可以處理異常(這裏我只是輸出錯誤信息)。
非常感謝你! – Pass
爲什麼你想抓住異常,在營救什麼,你想要執行。 –