


JAVA lernt E/A-Operationen, Byte-Stream und Zeichen-Stream (zusammenfassende gemeinsame Nutzung)
Dieser Artikel vermittelt Ihnen relevantes Wissen über Java. Er stellt hauptsächlich Probleme im Zusammenhang mit E/A-Operationen vor, einschließlich Byte-Streams und Zeichen-Streams. Ich hoffe, dass er für alle hilfreich ist.
Empfohlene Studie: „Java-Video-Tutorial“
Vorwort: In diesem Kapitel wird die grundlegende Verwendung von Byte-Stream und Zeichen-Stream im Detail vorgestellt, mit Abbildungen und Code-Implementierung.
IO-Betrieb
Byte-Stream
Java.io.InputStream-Eingabestream, der hauptsächlich zum Lesen von Dateiinhalten verwendet wird.
Java.io.OutputStream-Ausgabestream, der hauptsächlich zum Schreiben von Inhaltsbytes in Dateien verwendet wird.
FileInputStream
Dieser Stream wird zum Lesen von Daten aus einer Datei verwendet und sein Objekt kann mit dem Schlüsselwort new erstellt werden.
Es gibt verschiedene Konstruktormethoden zum Erstellen von Objekten.
Sie können einen Dateinamen vom Typ „String“ verwenden, um ein Eingabestream-Objekt zum Lesen der Datei zu erstellen
InputStream f = new FileInputStream("D:/hello");
Sie können auch ein Dateiobjekt verwenden, um ein Eingabestream-Objekt zum Lesen der Datei zu erstellen. Wir müssen zuerst die Methode File() verwenden, um ein Dateiobjekt zu erstellen:
File f = new File("D:/hello");InputStream in = new FileInputStream(f);
FileOutputStream
Diese Klasse wird verwendet, um eine Datei zu erstellen und Daten in die Datei zu schreiben.
Wenn die Zieldatei nicht existiert, 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.
Verwenden Sie einen Dateinamen vom Typ „String“, um ein Ausgabestream-Objekt zu erstellen:
OutputStream f = new FileOutputStream("D:/hello");
Sie können auch ein Dateiobjekt verwenden, um einen Ausgabestream zum Schreiben von Dateien zu erstellen. Wir müssen zuerst die File()-Methode verwenden, um ein Dateiobjekt zu erstellen:
File f = new File("D:/hello");OutputStream fOut = new FileOutputStream(f);
Byte-Stream-Lese- und Schreibfall
Lesen Sie den Inhalt der Datei D:/hello.txt und geben Sie ihn dann in die Datei ein D:/test.
public class Mk { public static void main(String[] args) throws IOException { File file=new File("D://hello.txt"); File file1= new File("D://test.txt"); InputStream is=new FileInputStream(file); OutputStream out=new FileOutputStream(file1); //定义byte数组用来暂存数据 byte[] buf = new byte[1024]; //读取Is中的内容存到buf is.read(buf); //将buf中的内容写入out out.write(buf); is.close(); out.close(); } }
Zeichenstrom
FileWriter
Instanz der Schreibdatei in txt
public class A { public static void main(String[] args) throws IOException { FileWriter fw = new FileWriter("user.txt", true); fw.write("你好中国1"); fw.write("你好中国2"); fw.write("你好中国3"); fw.close(); }}
FileReader
Instanz der Lesedatei
Ich habe den Inhalt geändert zu neuen Zeilen hier
br .ready() soll feststellen, ob dieser Zeilenstrom leer ist
br.readLine() dient dazu, eine Zeile auszugeben und dann den Cursor automatisch auf die nächste Zeile zu richten.
public class A { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new FileReader("user.txt")); while (br.ready()) { System.out.println(br.readLine()); } br.close(); }}
Der Unterschied zwischen Byte-Stream und Zeichen-Stream
Die Verwendung von Byte-Stream und Zeichen-Stream ist sehr ähnlich. Was sind also die Unterschiede, abgesehen vom Unterschied im Operationscode?
Der Byte-Stream selbst verwendet beim Betrieb keinen Puffer (Speicher), sondern wird direkt mit der Datei selbst betrieben, während der Zeichen-Stream beim Betrieb den Puffer verwendet.
Der Byte-Stream verwendet beim Betrieb einer Datei die Datei wird auch dann ausgegeben, wenn die Ressource nicht geschlossen ist (Close-Methode). Wenn der Zeichenstrom jedoch nicht die Close-Methode verwendet, wird kein Inhalt ausgegeben, was darauf hinweist, dass der Zeichenstrom einen Puffer verwendet und mit der Flush-Methode erzwungen werden kann. Aktualisieren Sie den Puffer, dann kann der Inhalt ohne Schließen ausgegeben werden. Ist es also in der Entwicklung besser, einen Byte-Stream oder einen Zeichen-Stream zu verwenden?
Beim Speichern von Dateien oder beim Übertragen von Dateien auf allen Festplatten erfolgt dies in Bytes, einschließlich Bildern, und Zeichen werden nur im Speicher gebildet, sodass Bytes-Vorgänge am häufigsten verwendet werden. Wenn Sie möchten, dass ein Java-Programm eine Kopierfunktion implementiert, sollten Sie für den Betrieb einen Bytestream verwenden (das Bild kann kopiert werden) und gleichzeitig lesen und schreiben (um Speicher zu sparen).
Empfohlenes Lernen: „
“
Java-Video-Tutorial
Das obige ist der detaillierte Inhalt vonJAVA lernt E/A-Operationen, Byte-Stream und Zeichen-Stream (zusammenfassende gemeinsame Nutzung). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

In dem Artikel werden Maven und Gradle für Java -Projektmanagement, Aufbau von Automatisierung und Abhängigkeitslösung erörtert, die ihre Ansätze und Optimierungsstrategien vergleichen.

In dem Artikel werden benutzerdefinierte Java -Bibliotheken (JAR -Dateien) mit ordnungsgemäßem Versioning- und Abhängigkeitsmanagement erstellt und verwendet, wobei Tools wie Maven und Gradle verwendet werden.

In dem Artikel wird in der Implementierung von mehrstufigem Caching in Java mithilfe von Koffein- und Guava-Cache zur Verbesserung der Anwendungsleistung erläutert. Es deckt die Einrichtungs-, Integrations- und Leistungsvorteile sowie die Bestrafung des Konfigurations- und Räumungsrichtlinienmanagements ab

In dem Artikel werden mit JPA für Objektrelationszuordnungen mit erweiterten Funktionen wie Caching und faulen Laden erläutert. Es deckt Setup, Entity -Mapping und Best Practices zur Optimierung der Leistung ab und hebt potenzielle Fallstricke hervor. [159 Charaktere]

Mit der Klassenbelastung von Java wird das Laden, Verknüpfen und Initialisieren von Klassen mithilfe eines hierarchischen Systems mit Bootstrap-, Erweiterungs- und Anwendungsklassenloadern umfasst. Das übergeordnete Delegationsmodell stellt sicher

In diesem Artikel werden Javas Remote -Methodenaufruf (RMI) zum Erstellen verteilter Anwendungen erläutert. IT-Details der Schnittstellendefinition, Implementierung, Registrierungssetup und Client-Seitenaufruf, die sich mit Herausforderungen wie Netzwerkproblemen und Sicherheit befassen.

In diesem Artikel wird die Socket-API von Java für die Netzwerkkommunikation beschrieben, die das Setup des Client-Servers, die Datenbearbeitung und entscheidende Überlegungen wie Ressourcenverwaltung, Fehlerbehandlung und Sicherheit abdeckt. Es untersucht auch die Leistungsoptimierungstechniken, ich

In diesem Artikel werden benutzerdefinierte Java -Netzwerkprotokolle erstellt. Es deckt die Protokolldefinition (Datenstruktur, Framing, Fehlerbehandlung, Versioning), Implementierung (Verwendung von Sockets), Datenserialisierung und Best Practices (Effizienz, Sicherheit, Wartea ab


Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

mPDF
mPDF ist eine PHP-Bibliothek, die PDF-Dateien aus UTF-8-codiertem HTML generieren kann. Der ursprüngliche Autor, Ian Back, hat mPDF geschrieben, um PDF-Dateien „on the fly“ von seiner Website auszugeben und verschiedene Sprachen zu verarbeiten. Es ist langsamer und erzeugt bei der Verwendung von Unicode-Schriftarten größere Dateien als Originalskripte wie HTML2FPDF, unterstützt aber CSS-Stile usw. und verfügt über viele Verbesserungen. Unterstützt fast alle Sprachen, einschließlich RTL (Arabisch und Hebräisch) und CJK (Chinesisch, Japanisch und Koreanisch). Unterstützt verschachtelte Elemente auf Blockebene (wie P, DIV),

SublimeText3 Linux neue Version
SublimeText3 Linux neueste Version

MantisBT
Mantis ist ein einfach zu implementierendes webbasiertes Tool zur Fehlerverfolgung, das die Fehlerverfolgung von Produkten unterstützen soll. Es erfordert PHP, MySQL und einen Webserver. Schauen Sie sich unsere Demo- und Hosting-Services an.

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Sicherer Prüfungsbrowser
Safe Exam Browser ist eine sichere Browserumgebung für die sichere Teilnahme an Online-Prüfungen. Diese Software verwandelt jeden Computer in einen sicheren Arbeitsplatz. Es kontrolliert den Zugriff auf alle Dienstprogramme und verhindert, dass Schüler nicht autorisierte Ressourcen nutzen.