Чтение свойств файла / каталога с помощью Java - PullRequest
1 голос
/ 29 мая 2010

Как я могу прочитать информацию о файле (например, размер, количество строк, последнее изменение и т. Д.) Из файла в файловой системе или содержимого каталога с Java? Я в настоящее время работаю на операционной системе Linux. Пожалуйста, дайте несколько идей, особенно для ОС Linux.

Заранее спасибо.

Ответы [ 3 ]

2 голосов
/ 29 мая 2010

Для чего это стоит, «количество строк» ​​не является атрибутом файла в UNIX или Linux.

Если вы хотите количество строк (при условии, что это правильная концепция), вам нужно выяснить это, прочитав файл. Простой подсчет символов новой строки дает примерно правильный ответ для «текстовых» файлов, но в других случаях может дать ложный ответ. Полный ответ включает в себя:

  • определение типа файла,
  • решая, имеет ли смысл "количество строк" для типа файла,
  • решает, считать ли строки или получить количество строк из внутренних метаданных файла, и
  • (при необходимости) подсчет строк способом, соответствующим типу файла.

Другие перечисленные вами атрибуты (размер файла и время изменения) могут быть доступны в Java с помощью классического java.io.File API или нового Java 7 java.nio.file.Files API.

1 голос
/ 29 мая 2010

Использовать класс файлов (за исключением количества строк - см. Этот Q / A для этого )

java.io.File.length ()

LastModified ()

Кроме того, если вы можете заставить свою Java-программу выполнять системный вызов, вы можете использовать команду Unix wc -l для подсчета строк - может быть быстрее, чем Java, но стоит вам порожденный процесс

1 голос
/ 29 мая 2010

Попробуйте заглянуть в файл api . Существует множество методов, таких как 'lastModified', 'length' и большая часть того, что вам нужно.

...