Как узнать время создания файла в Ruby в Windows? - PullRequest
8 голосов
/ 24 октября 2010

Как узнать время создания файла в Ruby в Windows?

File.ctime должно возвращать время изменения.

dir /tc в cmd.exe возвращает время создания с кучей других вещей.

Есть ли лучший способ, чем его выполнение и анализ?

1 Ответ

11 голосов
/ 24 октября 2010

Очевидно, что атрибут метаданных файла ctime (время создания или изменения) файла зависит от системы , поскольку некоторые системы (например, Windows) хранят время создания файла (его «дата рождения») и другие (системы Posix, например, Linux) отслеживают время последнего обновления. Windows использует атрибут ctime в качестве фактического времени создания , поэтому вы можете использовать различные функции ctime в Ruby.

Класс File имеет статические методы и методы экземпляра с именем ctime, которые возвращают время последнего изменения, а File :: Stat имеет метод экземпляра (который отличается тем, что не отслеживает изменения они происходят).

File.ctime("foo.txt") # => Sun Oct 24 10:16:47 -0700 2010 (Time)

f = File.new("foo.txt")
f.ctime # => Will change if the file is replaced (deleted then created).

fs = File::Stat.new("foo.txt")
fs.ctime # => Will never change, regardless of any action on the file.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...