java - Java 中的文件与随机访问文件

标签 java io nio

我需要在目录中搜索并获取其中的所有文件。所以我曾经将文件存储在文件数组中。我的问题是

1) 数组是否包含实际文件或对文件的引用? 2)哪个是最好的选择 File 或 RandomAcessFile ?为什么会这样?

请帮我处理一下我的代码

public File[] getAllFiles(String path) {
    File file  = new File(path);

    if (file.isDirectory() && file.exists()) {
        allFiles = file.listFiles();
        System.out.println("Files in the directory " + file.getName() 
            + " present in the path " + file.getAbsolutePath()
            + " are fetched sucessfully");
        printAllFiles(allFiles);

    }

    return allFiles;
}

public void printAllFiles(File data[]) {
    int count = 0;

    for (File i : data) {
        System.out.println("Index : " + count + " Name : " + i.getName());
        count++;
    }
}

最佳答案

File 是文件/目录的抽象表示,它可能存在也可能不存在。它不消耗任何资源,因此您可以随心所欲地存储它们。

RandomAccessFile 用于实际文件访问(读取、查找、写入),因此您在这里不需要它。

关于java - Java 中的文件与随机访问文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51985873/

相关文章:

java - 方法重载练习

io - 在 Fortran 中读取可变长度/类型行

java - 无法从 netty 服务器接收客户端响应

java - 如何获得更新后的排序后 TableModel?

java - Pascal 的 Java 集合类型模拟

java - 导入 .dat 文件 Java

java - NIO - channel 的就绪状态会丢失吗?

java - Netty Nio 中 promise 的异步更新

java - 如何在 Spring MVC 中为 API 调用生成指标/统计信息?

file-io - 为什么 perror() 在重定向时改变流的方向?