文件对象的名称

时间:2011-06-18 15:17:15

标签: ruby file

是否可以从File类的对象获取文件名?

例如,这种方法效果很好:

file = File::basename('/home/user/file.rb') 
p file # => file.rb

,但对于对象它不起作用

file = File.new('/home/user/file.rb')
p file.basename
# => undefined method `basename' for #<File:/home/user/file.rb> (NoMethodError)

2 个答案:

答案 0 :(得分:8)

没有直接的方法IIRC。你可以做到

file = File.new('/home/user/file.rb')
p File.basename(file.path)

答案 1 :(得分:0)

您可以使用path实例方法。 (如果你只想要那个部分,请拨打File::basename。)