赞 | 0 |
VIP | 0 |
好人卡 | 0 |
积分 | 0 |
经验 | 5976 |
最后登录 | 2015-7-19 |
在线时间 | 157 小时 |
Lv1.梦旅人
- 梦石
- 0
- 星屑
- 49
- 在线时间
- 157 小时
- 注册时间
- 2013-8-14
- 帖子
- 203
|
加入我们,或者,欢迎回来。
您需要 登录 才可以下载或查看,没有帐号?注册会员
x
本帖最后由 九靈 于 2013-8-22 20:51 编辑
在Main组里
我知道 Errno::ENOENT 是用来捕捉找不到文件时的异常的
然后系统在找不到文件时会捕捉到Errno::ENOENT异常并执行
filename = $!.message.sub("No such file or dirctory - ","")
print("找不到文件 #{filename}。")
这段代码
---------------------------------------------------
接着有几个问题
(允许我一题多问吧)
(话说这能拆开来问吗...)
1. 为什么 知道所缺的文件的名字?
2. 为什么 filename 的值不是 "No such file or dirctory - "
3. RMXP 附带帮助里说的 "$! 最近发生的异常的信息。由 raise 设定。" 在这里是指 Errno::ENOENT 吗? 又 $! == Errno::ENOENT ?
4. RMXP 附带帮助里说 "message 返回描述错误信息的字符串。" 那在这里 "错误信息的字符串" 是指什么?
5. 话说RMXP 附带帮助里
"sub(pattern) {|matched| ... }
sub!(pattern) {|matched| ... }
用 pattern 来替换首次匹配 pattern 的部分。
sub 生成并返回替换后的字符串。而 sub! 会修改 self 本身并返回结果。若没有进行替换时返回 nil。
除去只进行一次匹配这个特点以外,它与 gsub 是相同的。"
有看没懂= ='
估计 pattern 是指 "No such file or dirctory - ",""
这样的话 "sub 生成并返回替换后的字符串。"
filename 的值就会是 "No such file or dirctory - ","" 了?
不过事实似乎是会 print 出 "找不到文件 + 缺失的文件名"
6. "No such file or dirctory - ","" 的 最后 "" 有什么深层的意思?
--------------------------------------------
|
|