Heim > Artikel > Software-Tutorial > Verwenden Sie Java-Code, um alle TXT-Dokumente in einem Ordner zu lesen, einschließlich derjenigen in Unterordnern
Erstellen Sie eine neue Klasse, nennen Sie sie FileHandler, fügen Sie den folgenden Code ein und legen Sie basePath auf den Ordnerpfad fest, den Sie lesen möchten. Es stehen Lese- und Schreibmethoden zur Verfügung, die Sie bei Bedarf aufrufen können. „Java java.io.File importieren; import java.io.FileWriter; import java.io.IOException; import java.nio.file.Files; import java.nio.file.Paths; öffentliche Klasse FileHandler { privater String basePath; public FileHandler(String basePath) { this.basePath = basePath; } public String readFile(String fileName) löst eine IOException { String filePath = basePath + File.separator + fileName; byte[] bytes = Files.readAllBytes(Paths.get(filePath)); neuen String(Bytes) zurückgeben; } public void writeFile(String fileName, String
statischer String basePath="/home/csvDir";
/**
* Finden Sie alle Dateien, die mit CSV übereinstimmen, im Ordner
*
* @param dir Das zu findende Ordnerobjekt
**/
public static void findFile(File dir) löst eine IOException aus{
File[] dirFiles = dir.listFiles();
for(File temp : dirFiles){
if(!temp.isFile()){
findFile(temp);
}
//Suchen Sie die angegebene Datei
if(temp.isFile() & temp.getAbsolutePath().endsWith(".txt") ){
System.out.println(temp.isFile() + " " + temp.getAbsolutePath());
readFileContent(temp);
}
}
}
/**
* @param file Das zu lesende Dateiobjekt
* @return Gibt den Inhalt der Datei zurück
**/
public static String readFileContent(File file) löst eine IOException aus{
FileReader fr = neuer FileReader(file);
BufferedReader br = new BufferedReader(fr);
StringBuffer sb = new StringBuffer();
while(br.ready()){
sb.append(br.readLine());
}
System.out.println(sb.toString());
return sb.toString();
}
/**
* @param file Das zu schreibende Dateiobjekt
* @param content Der Inhalt der zu schreibenden Datei
**/
public static void writeFileContent(File file,String content) löst eine IOException aus{
FileWriter fw = neuer FileWriter(file);
fw.write(content);
fw.flush();
fw.close();
}
public static void main(String[] args) {
versuchen {
findFile(new File(basePath));
} Catch (IOException e) {
//TODO Automatisch generierter Catch-Block
e.printStackTrace();
}
}
Sub t()
Dim fso, f, f1, fc, s, r
Const ForReading = 1, ForWriting = 2
Setzen Sie fso = CreateObject("Scripting.FileSystemObject")
'Set fc = fso.GetFile(WScript.ScriptFullName).ParentFolder.Files
Setzen Sie fc = fso.GetFolder("c:windows").Files 'Ändern Sie c:windows in den tatsächlichen Ordner, wenn Sie es verwenden
L = 1
Für jedes f1 in fc
EXTName = UCase(fso.GetExtensionName(f1.Name))
Wenn EXTName = „TXT“ Dann
Setzen Sie fs = fso.OpenTextFile(f1, ForReading)
fb = fs.ReadAll
If InStr(1, fb, "apple") > 0 Then
Cells(L, 1) = f1.Name
Cells(L, 2) = f1.Path
L = L + 1
Ende wenn
Ende wenn
Weiter
End Sub
Das obige ist der detaillierte Inhalt vonVerwenden Sie Java-Code, um alle TXT-Dokumente in einem Ordner zu lesen, einschließlich derjenigen in Unterordnern. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!