21xrx.com
2025-07-03 17:51:24 Thursday
文章检索 我的文章 写文章
Java文件读取:从读取单个文件到批量读取
2023-06-13 03:58:45 深夜i     85     0
Java 文件读取 FileInputStream File类

Java是一种广泛使用的编程语言,其文件读取功能十分强大。在本文中,我们将讨论如何使用Java读取单个文件以及批量读取文件的方法。同时,我们将提供代码案例,以帮助您更好地理解Java文件读取的实现。

读取单个文件可以使用Java的FileInputStream类。这个类提供了一个字节输入流,可以用来从文件中读取数据。以下是一个简单的代码示例,用于从文件中读取文本内容:

public static void main(String[] args) {
  String fileName = "file.txt";
  try {
    FileInputStream fileInputStream = new FileInputStream(fileName);
    InputStreamReader inputStreamReader = new InputStreamReader(fileInputStream, "UTF-8");
    BufferedReader reader = new BufferedReader(inputStreamReader);
    String line = null;
    while ((line = reader.readLine()) != null) {
      System.out.println(line);
    }
    reader.close();
    inputStreamReader.close();
    fileInputStream.close();
  } catch (IOException e) {
    e.printStackTrace();
  }
}

上述代码首先打开一个文件输入流,然后将其传递给InputStreamReader进行读取。由于我们要读取的是文本内容,所以需要使用BufferedReader包装一下。接下来,我们使用一个while循环逐行读取文件内容,并将其输出到控制台。

如果您需要从多个文件中读取数据,可以使用Java的File类。File类提供了许多方法,可以让您管理和操作文件。以下是一个示例代码,可以批量读取指定目录下的所有文件:

public static void main(String[] args) {
  String path = "D:/files";
  File folder = new File(path);
  File[] fileList = folder.listFiles();
  for (File file : fileList) {
    try {
      FileInputStream fileInputStream = new FileInputStream(file);
      InputStreamReader inputStreamReader = new InputStreamReader(fileInputStream, "UTF-8");
      BufferedReader reader = new BufferedReader(inputStreamReader);
      String line = null;
      while ((line = reader.readLine()) != null) {
        System.out.println(line);
      }
      reader.close();
      inputStreamReader.close();
      fileInputStream.close();
    } catch (IOException e) {
      e.printStackTrace();
    }
  }
}

通过使用Java的File类,我们将指定目录下的所有文件读取到了一个文件数组中。然后,我们对于每个文件都按照之前的方式进行读取。这样,我们就可以一次性读取多个文件了。

  
  

评论区