21xrx.com
2024-11-22 07:44:15 Friday
登录
文章检索 我的文章 写文章
Java文件读取:从读取单个文件到批量读取
2023-06-13 03:58:45 深夜i     --     --
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类,我们将指定目录下的所有文件读取到了一个文件数组中。然后,我们对于每个文件都按照之前的方式进行读取。这样,我们就可以一次性读取多个文件了。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复