Lesen Sie Bytes aus einer Datei in Java

Sheeraz Gul 12 Oktober 2023
  1. Verwenden Sie FileInputStream, um Bytes aus einer Datei in Java zu lesen
  2. Verwenden Sie die Methode Files der Klasse readAllBytes(), um Bytes aus einer Datei in Java zu lesen
  3. Verwenden Sie Apache Commons-IO, um Bytes aus einer Datei in Java zu lesen
Lesen Sie Bytes aus einer Datei in Java

Es gibt mehrere Methoden in Java, um Bytes aus einer Datei zu lesen oder eine Datei in Bytes oder Bytes-Arrays umzuwandeln. Dieses Tutorial zeigt verschiedene Methoden zum Lesen von Bytes aus einer Datei in Java.

Verwenden Sie FileInputStream, um Bytes aus einer Datei in Java zu lesen

Der FileInputStream kann Daten aus der angegebenen Datei mit Bytes lesen. Wir können die Methode FileInputStream.read() dieser Klasse verwenden, um die Bytes aus einer Datei in Java zu lesen.

Führen Sie die folgenden Schritte aus, um Bytes aus einer Datei mit der Klasse FileInputStream zu lesen.

  1. Erstellen Sie zuerst eine Instanz der Klasse FileInputStream.
  2. Erstellen Sie nun ein Byte-Array. Die Länge sollte der Eingabedatei entsprechen.
  3. Lesen Sie die Bytes aus FileInputStream mit der read()-Methode.
  4. Drucken Sie das Byte-Array.
  5. Schließen Sie die Instanz.

Lassen Sie uns versuchen, ein Beispiel basierend auf den obigen Schritten zu implementieren.

Unsere Eingabedatei ist im Rich Text Format.

Hi, This is delftstack.com! The Best tutorial site.

Die Java-Implementierung:

package delftstack;

import java.io.*;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.util.Arrays;

public class Example {
  public static void main(String[] args) throws IOException {
    File File_Path = new File("C:\\Users\\Sheeraz\\delftstack.rtf");
    // Instance of the FileInputStream
    FileInputStream File_Input_Stream = new FileInputStream(File_Path);

    // Create a byte array
    byte[] Demo_Array = new byte[(int) File_Path.length()];

    // Read file content to byte array
    File_Input_Stream.read(Demo_Array);

    // Close the instance
    File_Input_Stream.close();

    // Print the above byte array
    System.out.print(Arrays.toString(Demo_Array));
  }
}

Der obige Code liest die Bytes aus der angegebenen Datei in ein Array. Siehe Ausgabe:

[72, 105, 44, 32, 84, 104, 105, 115, 32, 105, 115, 32, 100, 101,
 108, 102, 116, 115, 116, 97, 99, 107, 46, 99, 111, 109, 33, 32,
 84, 104, 101, 32, 66, 101, 115, 116, 32, 116, 117, 116, 111,
 114, 105, 97, 108, 32, 115, 105, 116, 101, 46]

Verwenden Sie die Methode Files der Klasse readAllBytes(), um Bytes aus einer Datei in Java zu lesen

Die Methode readAllBytes() liest alle Bytes aus einer Datei in Java. Führen Sie die folgenden Schritte aus, um Bytes aus einer Datei mit der Klasse Files zu lesen.

  1. Holen Sie sich den Pfad mit der Methode Paths.get().
  2. Lesen Sie die Bytes aus der angegebenen Datei mit Files.readAllBytes() in ein Array.
  3. Drucken Sie das Byte-Array.

Siehe das Beispiel:

package delftstack;

import java.io.*;
import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;
import java.util.Arrays;

public class Example {
  public static void main(String[] args) throws IOException {
    // Create the path
    Path File_Path = Paths.get("C:\\Users\\Sheeraz\\delftstack.rtf");

    // Read Bytes
    byte[] Demo_Array = Files.readAllBytes(File_Path);

    // Print the above byte array
    System.out.print(Arrays.toString(Demo_Array));
  }
}

Der Code liest die Bytes aus der angegebenen Datei mit der Methode Files.readAllBytes(). Siehe Ausgabe:

[72, 105, 44, 32, 84, 104, 105, 115, 32, 105, 115,
 32, 100, 101, 108, 102, 116, 115, 116, 97, 99, 107,
 46, 99, 111, 109, 33, 32, 84, 104, 101, 32, 66, 101,
 115, 116, 32, 116, 117, 116, 111, 114, 105, 97, 108,
 32, 115, 105, 116, 101, 46]

Verwenden Sie Apache Commons-IO, um Bytes aus einer Datei in Java zu lesen

Das Apache Commons-IO hat ein Paket FileUtils, mit dem alle Bytes aus einer Datei in Java gelesen werden können. Stellen Sie sicher, dass Apache Commons-IO zu Ihrer Java-Umgebung hinzugefügt wurde.

Hier ist die Maven-Abhängigkeit für Apache Commons-IO; füge es zu deiner pom.xml hinzu.

<dependency>
      <groupId>commons-io</groupId>
      <artifactId>commons-io</artifactId>
      <version>2.7</version>
  </dependency>

Führen Sie die folgenden Schritte aus, um die Bytes aus einer Datei mit Apache Commons-IO zu lesen.

  1. Erstellen Sie eine Datei mit der Klasse File mit dem angegebenen Pfad.
  2. Lesen Sie die Bytes mit FileUtils.readFileToByteArray() mit dem Dateinamen als Eingabe.
  3. Drucken Sie das Byte-Array.

Hier ist die Java-Implementierung für dieses Beispiel.

package delftstack;

import java.io.File;
import java.io.IOException;
import java.util.Arrays;
import org.apache.commons.io.FileUtils;

public class Example {
  public static void main(String[] args) throws IOException {
    // Create the path
    File Demo_File = new File("C:\\Users\\Sheeraz\\delftstack.rtf");

    // Read Bytes
    byte[] Demo_Array = FileUtils.readFileToByteArray(Demo_File);

    // Print the above byte array
    System.out.print(Arrays.toString(Demo_Array));
  }
}

Der Code liest die Bytes aus der angegebenen Datei unter Verwendung der Apache Commons-IO-Bibliothek. Siehe Ausgabe:

[72, 105, 44, 32, 84, 104, 105, 115, 32, 105, 115,
 32, 100, 101, 108, 102, 116, 115, 116, 97, 99, 107,
 46, 99, 111, 109, 33, 32, 84, 104, 101, 32, 66, 101,
 115, 116, 32, 116, 117, 116, 111, 114, 105, 97, 108,
 32, 115, 105, 116, 101, 46]
Sheeraz Gul avatar Sheeraz Gul avatar

Sheeraz is a Doctorate fellow in Computer Science at Northwestern Polytechnical University, Xian, China. He has 7 years of Software Development experience in AI, Web, Database, and Desktop technologies. He writes tutorials in Java, PHP, Python, GoLang, R, etc., to help beginners learn the field of Computer Science.

LinkedIn Facebook

Verwandter Artikel - Java Bytes

Verwandter Artikel - Java File