Heim > Java > javaLernprogramm > Hauptteil

Wie lese ich mit Java alle Dateien in einem Ordner in eine einzige Datei?

王林
Freigeben: 2023-08-27 12:01:13
nach vorne
1340 Leute haben es durchsucht

Die Methode

listFiles()Wie lese ich mit Java alle Dateien in einem Ordner in eine einzige Datei? der Klasse

File gibt ein Array zurück, das das aktuelle (Datei-)Objekt enthält.

Lesen Sie den Inhalt aller Dateien in einem Ordner in eine einzige Datei –

  • Durch Übergabe des zum Erstellen des Dateiobjekts erforderlichen Dateipfads als Argument.
  • Lesen Sie den Inhalt jeder Datei mit dem Scanner oder einem anderen Lesegerät.
  • Hängen Sie den gelesenen Inhalt an den StringBuffer an.
  • Schreiben Sie den StringBuffer-Inhalt in die gewünschte Ausgabedatei.

Beispiel

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");
      }
   }
}
Nach dem Login kopieren

Ausgabe

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
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonWie lese ich mit Java alle Dateien in einem Ordner in eine einzige Datei?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:tutorialspoint.com
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage