Heim  >  Artikel  >  Java  >  Wie lese ich Dateien in Java?

Wie lese ich Dateien in Java?

青灯夜游
青灯夜游Original
2019-11-18 13:14:536141Durchsuche

Wie lese ich Dateien in Java?

Zwei Klassen können in Java zum Lesen von Dateien verwendet werden: BufferedReader und BufferedInputStream.

1. Verwenden Sie BufferedReader

In den folgenden Beispielen sehen wir zwei Methoden zur Verwendung von BufferedReader zum Lesen von Dateien.

Hier habe ich zwei TXT-Dateien, myfile1.txt und myfile2.txt. Um zu demonstrieren, wie eine Datei gelesen wird.

Ich habe die erste Datei mit der Methode readLine() gelesen. Verwenden Sie die Methode read(), um die zweite Datei zu lesen.

Methode 1: Verwenden Sie die readLine()-Methode der BufferedReader-Klasse

public String readLine() throws IOException

Es liest eine Textzeile.

Wie lese ich Dateien in Java?

Methode 2: Verwenden Sie die read()-Methode

public int read() throws IOException

Es liest die Zeichen des Textes. Da es einen ganzzahligen Wert zurückgibt, muss es explizit in den Typ char konvertiert werden.

Wie lese ich Dateien in Java?

2. Verwenden von BufferedInputStream

Die Schritte zum Lesen von Dateien mit FileInputStream und BufferedInputStream in Java sind wie folgt folgt:

1) Erstellen Sie eine Dateiinstanz anhand des vollständigen Pfads der Datei.

2) Übergeben Sie die Dateiinstanz an FileInputStream, wodurch eine Verbindung zur tatsächlichen Datei geöffnet wird, die durch das Dateiobjekt file im Dateisystem benannt wird.

3) Übergeben Sie die FileInputStream-Instanz an BufferedInputStream, der einen BufferedInputStream erstellt und seine Parameter darin zur späteren Verwendung speichert.

Erstellen Sie ein internes Pufferarray in buf.

4) Verwenden Sie eine While-Schleife, um die Datei zu lesen, und die Methode available() prüft, ob das Ende der Datei gelesen wurde. Verwenden Sie in der Zwischenzeit die Lesefunktion von FileInputStream, um den Dateiinhalt zu lesen

Das vollständige Codebeispiel lautet wie folgt

import java.io.*;
public class ReadFileDemo {
   public static void main(String[] args) {         
      //读取c盘的file1文件
      File file = new File("C://file1.txt");
      BufferedInputStream bis = null;
      FileInputStream  fis= null;

      try
      {
          //第一步 通过文件路径来创建文件实例
          fis = new FileInputStream(file);

          /*把FileInputStream实例 传递到 BufferedInputStream
            目的是能快速读取文件
           */
          bis = new BufferedInputStream(fis);

          /*available检查是不是读到了文件末尾 */
          while( bis.available() > 0 ){                 
              System.out.print((char)bis.read());
          }

       }catch(FileNotFoundException fnfe)
        {
            System.out.println("文件不存在" + fnfe);
        }
        catch(IOException ioe)
        {
            System.out.println("I/O 错误: " + ioe); 
        }
        finally
        {
            try{
               if(bis != null && fis!=null)
               {
                     fis.close();
                  bis.close();
               }      
             }catch(IOException ioe)
              {
                  System.out.println("关闭InputStream句柄错误: " + ioe);
              }         
        }
   }    
}

Wie lese ich Dateien in Java?

Chinesisch lesen

Es wird empfohlen Verwenden Sie zum Lesen readline anstelle von read, da chinesische read Nach dem Lesen und Konvertieren werden die Zeichen verstümmelt.

Wie lese ich Dateien in Java?

php Chinesische Website, eine große Anzahl kostenloser Java-Einführungs-Tutorials, willkommen zum Online-Lernen!

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

Stellungnahme:
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
Vorheriger Artikel:Was bedeutet das in Java?Nächster Artikel:Was bedeutet das in Java?