Heim  >  Artikel  >  Java  >  Was sind die grundlegenden Wissenspunkte von Java-Streams und -Dateien?

Was sind die grundlegenden Wissenspunkte von Java-Streams und -Dateien?

WBOY
WBOYnach vorne
2023-04-27 14:34:071073Durchsuche

1.Stream

a.Definition:

Das Java.io-Paket enthält fast alle Klassen, die für den Betrieb von Ein- und Ausgaben erforderlich sind. Alle diese Stream-Klassen repräsentieren Eingabequellen und Ausgabeziele.

Streams im Java.io-Paket unterstützen viele Formate, wie z. B. Basistypen, Objekte, lokalisierte Zeichensätze usw.

Ein Stream kann als eine Folge von Daten verstanden werden. Ein Eingabestream stellt das Lesen von Daten aus einer Quelle dar, und ein Ausgabestream stellt das Schreiben von Daten an ein Ziel dar.

Java bietet leistungsstarke und flexible Unterstützung für I/O, wodurch es häufiger bei der Dateiübertragung und Netzwerkprogrammierung eingesetzt wird.

b. Konsoleneingabe:

Die Konsoleneingabe für Java erfolgt durch System.in.

Um einen an die Konsole gebundenen Zeichenstrom zu erhalten, können Sie System.in in ein BufferedReader-Objekt einschließen, um einen Zeichenstrom zu erstellen.

BufferedReader br = new BufferedReader(new InputStreamReader(System.in));

Sobald das BufferedReader-Objekt erstellt ist, können wir die Methode read() verwenden, um ein Zeichen von der Konsole zu lesen, oder die Methode readLine(), um eine Zeichenfolge zu lesen.

Im Folgenden wird gezeigt, wie die Eingabe mehrerer Zeichen gelesen wird. Dieser Code liest die Zeicheneingabe der Konsole so lange, bis der Benutzer q eingibt:

char c;

BufferedReader br = new BufferedReader(new InputStreamReader(System.in));

System.out.println("Zeichen eingeben, zum Beenden die Taste 'q' drücken.");

tun {

c = (char) br.read();

System.out.println(c);

}

while (c != 'q');

Wenn Sie eine Zeichenfolge lesen möchten, verwenden Sie readLine()

c. Konsolenausgabe:

Wie bereits erwähnt, wird die Konsolenausgabe durch print() und println() abgeschlossen. Diese Methoden werden von der Klasse PrintStream definiert und System.out ist eine Referenz auf das Objekt dieser Klasse.

PrintStream erbt die OutputStream-Klasse und implementiert die write()-Methode. Auf diese Weise können mit write() auch Operationen auf die Konsole geschrieben werden. Diese Schreibweise wird jedoch nicht häufig verwendet.

public static void main(String args[])

{

int b; b = 'A';

System.out.write(b);

System.out.write('n');

}

2.Lesen und Schreiben von Dateien:

Gemäß dem vorherigen Kapitel ist ein Stream als eine Folge von Daten definiert. Der Eingabestream wird zum Lesen von Daten aus der Quelle und der Ausgabestream zum Schreiben von Daten in das Ziel verwendet.

Die beiden wichtigen Streams in diesem Kapitel sind FileInputStream und FileOutputStream.

a.FileInputStream:

Dieser Stream wird zum Lesen von Daten aus einer Datei verwendet und seine Objekte können mit dem Schlüsselwort new erstellt werden.

Zum Erstellen von Objekten werden verschiedene Konstruktormethoden verwendet.

Sie können einen String-Dateinamen verwenden, um ein Eingabestream-Objekt zum Lesen der Datei zu erstellen:

InputStream f = new FileInputStream("C:/java/hello"); Sie können ein Dateiobjekt auch verwenden, um ein Eingabestreamobjekt zum Lesen der Datei zu erstellen. Wir müssen zuerst die Methode File() verwenden, um ein Dateiobjekt zu erstellen:

Datei f = neue Datei("C:/java/hello");

InputStream out = new FileInputStream(f);

b.FileOutputStream:

Mit dieser Klasse wird eine Datei erstellt und Daten in die Datei geschrieben.

Wenn die Zieldatei nicht vorhanden ist, bevor der Stream die Datei zur Ausgabe öffnet, erstellt der Stream die Datei.

Es gibt zwei Konstruktoren, die zum Erstellen von FileOutputStream-Objekten verwendet werden können.

Erstellen Sie ein Ausgabestream-Objekt mit einem String-Dateinamen:

OutputStream f = new FileOutputStream("C:/java/hello")

Sie können ein Dateiobjekt auch verwenden, um einen Ausgabestream zum Schreiben in die Datei zu erstellen. Wir müssen zuerst die Methode File() verwenden, um ein Dateiobjekt zu erstellen:

File f = new File("C:/java/hello");

Spezifische Methoden finden Sie unter: https://www.runoob.com/java/java-files-io.html

c.Dateiklasse:

Die Java File-Klasse stellt Dateinamen und Verzeichnispfadnamen auf abstrakte Weise dar. Diese Klasse wird hauptsächlich zum Erstellen von Dateien und Verzeichnissen, zum Suchen nach Dateien und zum Löschen von Dateien verwendet.

Dateiobjekte stellen Dateien und Verzeichnisse dar, die tatsächlich auf der Festplatte vorhanden sind. Erstellen Sie ein File-Objekt mit dem folgenden Konstruktor.

Erstellt eine neue Dateiinstanz, indem die angegebene Pfadnamenzeichenfolge in einen abstrakten Pfadnamen konvertiert wird:

File(String pathname);

Erstellen Sie eine neue Dateiinstanz basierend auf der übergeordneten Pfadnamenzeichenfolge und der untergeordneten Pfadnamenzeichenfolge:

Datei(String-Elternteil, String-Kind);

Erstellt eine neue Dateiinstanz, indem der angegebene Datei-URI in einen abstrakten Pfadnamen konvertiert wird.

Datei(URI uri);

d.Java FileReader-Klasse:

Die FileReader-Klasse erbt von der InputStreamReader-Klasse. Diese Klasse liest zeichenweise Daten aus dem Stream.

//Erstelle einen neuen FileReader mit einer Datei, aus der Daten gelesen werden sollen:

FileReader(Dateidatei);

//Erstelle einen neuen FileReader mit einem FileDescriptor zum Lesen von Daten.

FileReader(FileDescriptor fd);

//Erstelle einen neuen FileReader mit dem Namen einer Datei, aus der Daten gelesen werden sollen.

FileReader(String fileName);

e.Java FileWriter-Klasse:

Die FileWriter-Klasse erbt von der OutputStreamWriter-Klasse. Diese Klasse schreibt Daten zeichenweise in den Stream. Mit den folgenden Konstruktionsmethoden können Sie die benötigten Objekte erstellen

Konstruiert ein FileWriter-Objekt mit einem File-Objekt:

FileWriter(Dateidatei);

Konstruiert ein FileWriter-Objekt anhand eines File-Objekts.

FileWriter(Dateidatei, boolesches Anhängen);

Das obige ist der detaillierte Inhalt vonWas sind die grundlegenden Wissenspunkte von Java-Streams und -Dateien?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:yisu.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen