Имя файла-объекта - PullRequest
3 голосов
/ 18 июня 2011

Можно ли получить имя файла из объекта 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 ]

8 голосов
/ 18 июня 2011

Прямого метода IIRC нет. Вы можете сделать

file = File.new('/home/user/file.rb')
p File.basename(file.path)
0 голосов
/ 18 июня 2011

Вы можете использовать метод экземпляра path. (И назовите File::basename на это, если вы хотите только эту часть.)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...