使用java读取文件/目录属性

时间:2010-05-29 02:36:16

标签: java java-io

如何从文件系统中的文件或Java目录内容中读取文件信息(例如大小,行数,最后修改等)?我目前正在研究linux操作系统。请特别为Linux OS提供一些想法。

先谢谢。

3 个答案:

答案 0 :(得分:2)

对于它的价值,“行计数”不是UNIX或Linux中的文件属性。

如果你想要一个行数(假设它是一个有效的概念),你需要通过读取文件来弄明白。简单地计算换行符可以为“文本”文件提供一个大致正确的答案,但在其他情况下它可能会给出一个虚假的答案。完整的答案包括:

  • 确定文件的类型,
  • 判断“行数”是否对文件类型有意义,
  • 决定是否计算行数或从文件的内部元数据中检索行数,
  • (如有必要)以适合文件类型的方式计算行数。

您可以使用经典java.io.File API或新的Java 7 java.nio.file.Files API在Java中访问您列出的其他属性(文件大小和修改时间)。

答案 1 :(得分:1)

尝试查看文件api。有很多方法,比如'lastModified','length',以及你应该需要的大部分方法。

答案 2 :(得分:1)

使用File类(line count - see this Q/A for that除外)

java.io.File.length()

lastModified()

此外,如果您可以让您的Java程序进行系统调用,您可以使用Unix的wc -l命令为您计算行数 - 可能比Java快,但是您需要花费一个衍生出来的过程