我遇到了以下 Java 代码片段 ( source ),它用于读取文件中的最后行。它使用两个 Apache 库 - ReversedLinesFileReader和 FileUtils 。这是:
ReversedLinesFileReader reader = new ReversedLinesFileReader(FileUtils.getFile(file));
String s = "";
while ((s = reader.readLine()) != null) {
System.out.println(s);
}
但是我不明白的是,为什么我们不简单地将文件路径放入 ReversedLinesFileReader 的参数中,而是使用 FileUtils 类。
为什么我不能简单地说:
File someFile = new File("someFile.txt");
ReversedLinesFileReader reader = new ReversedLinesFileReader( someFile ) ;
谢谢
最佳答案
... what is the advantage of using the Apache FileUtils class?
如果file
只是一根弦,没有什么优势。调用getFile
会打电话new File(file)
...在处理 file
的“var-args-ness”之后范围。因此,事实上,使用 getFile
会带来性能损失在这种情况下,具体 yield 为零。
如果file
是 String[]
,然后FileUtils.getFile(file)
将字符串转换为文件路径。
Why Can't I simply say instead ...
假设file
是 String
,你可以,并且(IMO)你应该按照你的建议去做。
1 - 我见过人们在这种情况下争论说避免使用 java.io
是一个优势直接上课,但坦白说我不买。
关于java - 在下面的Java代码中,使用Apache FileUtils类有什么好处?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35388264/