首頁  >  文章  >  Java  >  如何使用Java將資料夾中的所有檔案讀取到一個單獨的檔案中?

如何使用Java將資料夾中的所有檔案讀取到一個單獨的檔案中?

王林
王林轉載
2023-08-27 12:01:131293瀏覽

如何使用Java將資料夾中的所有檔案讀取到一個單獨的檔案中?

File 類別的 listFiles() 方法傳回一個數組,該數組保存由目前(檔案)物件。

將資料夾中所有檔案的內容讀取到單一檔案 -

  • 透過傳遞建立檔案物件所需的檔案路徑作為參數。
  • 使用 Scanner 或任何其他讀取器讀取每個檔案的內容。
  • 將讀取的內容附加到 StringBuffer 中。
  • 將 StringBuffer 內容寫入所需的輸出檔案。

範例

import java.io.DataOutputStream;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.Scanner;
public class Test {
   public static void main(String args[]) throws IOException {
      //Creating a File object for directory
      File directoryPath = new File("D:\SampleDirectory");
      //List of all files and directories
      File filesList[] = directoryPath.listFiles();
       System.out.println("List of files and directories in the specified directory:");
      Scanner sc = null;
      StringBuffer sb = new StringBuffer();
      for(File file : filesList) {
         System.out.println("File name: "+file.getName());
         System.out.println("File path: "+file.getAbsolutePath());
         System.out.println("Size :"+file.getTotalSpace());
         //Instantiating the Scanner class
         sc= new Scanner(file);
         String input;
         while (sc.hasNextLine()) {
            input = sc.nextLine();
            sb.append(input+" ");
         }
         System.out.println("Contents of the file: "+sb.toString());
         System.out.println(" ");        
           //Instantiating the FileOutputStream class
         FileOutputStream fileOut = new FileOutputStream("D:\output.txt");
         //Instantiating the DataOutputStream class
         DataOutputStream outputStream = new DataOutputStream(fileOut);
         //Writing UTF data to the output stream
         outputStream.write(sb.toString().getBytes());
         outputStream.flush();
         System.out.println("Data entered into the file");
      }
   }
}

輸出

List of files and directories in the specified directory:
File name: sample1.txt
File path: D:\SampleDirectory\sample1.txt
Contents of the file: sample text file1

Data entered into the file
File name: sample2.txt
File path: D:\SampleDirectory\sample2.txt
Contents of the file: sample text file2

Data entered into the file
File name: sample3.txt
File path: D:\SampleDirectory\sample3.txt
Contents of the file: sample text file3

Data entered into the file

以上是如何使用Java將資料夾中的所有檔案讀取到一個單獨的檔案中?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:tutorialspoint.com。如有侵權,請聯絡admin@php.cn刪除