In diesem Artikel wird hauptsächlich die Verwendung von Java InputStream -Streams vorgestellt.
(1) FileInputStream: Unterklasse, Kanal zum Lesen von Daten
Verwendungsschritte:
1. Erhalten Sie die Zieldatei: neue Datei ()
2. Erstellen Sie einen Kanal: Neue FileInputString ()
3. Lesen Sie Daten: read ()
4. Ressourcen veröffentlicht: Close ()
// einige Pakete, die standardmäßig importieren können, importieren java.io.file; importieren java.io.fileinputstream; import Java.io.ioxception;
public static void main (String [] args) löst IOException {// Todo automatisch generierte Methode Stub // auf, um den Effekt anzuzeigen test1 (); System.out.println ("-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------(2) Drei Möglichkeiten zum Lesen von Daten
1. Lesen Sie direkt (jeweils nur ein Byte)
int date = fileInputStream.read (); char date3 = (char) FileInputStream.read ();
// öffentliche statische void test1 () löscht ioException {// (1) die Zieldateidatei für die Zieldatei = Neue Datei ("C: //users//joke//desktop//demo1.java"); // (2) Erstellen Sie einen Kanal basierend auf dem Ziel -Datei -Pfad: new Datei -Datei -Datei -Datei)/Datei -Datei -Datei -Datei)/Datei -Datei -Datei -Datei)/Datei -Datei -Datei)/Datei -Datei -Datei)/Datei -Datei -Datei)/Datei -Datei -Datei)/Datei -Datei -Datei (cateinputstream). Daten: read (); int date = fileInputStream.read (); // Hier ist int type int date2 = fileInputStream.read (); // char date3 = (char) FileInputStream.read (); // system.out.println (Datum+"//"+Date2+"//"+Datum3); // (4) die RessourcendateiInputStream.close ();} freigeben;};}2. Verwenden Sie allein für Schleifen (INE -Effizienz)
für (int i = 0; i <file.length (); i ++) {System.out.print ((char) FileInputStream.read ()); } // Methode Zwei-Loop-Traversal public static void test2 () löst IOException {// Testerenteiz durch Zeit langstarttime = system.currentTimillis (); Datei Datei = neue Datei ("c: //users//joke//desktop//demo1.java). 0;3.Byte [] Puffer (kann nur die angegebene Anzahl von Bytes lesen und keine vollständige Datei lesen)
byte [] bt = neues byte [1024]; int count = fileInputStream.read (BT); System.out.println (neue String (bt, 0, count));
// Methode 3 Erstellen Sie einen Puffer (kann nur die angegebene Größe lesen, keine vollständige Datei lesen). byte lesen [] bt = new Byte [1024]; // read () les Byte int count = fileInputStream.read (bt); System.out.println (count); // Zeigen Sie die Anzahl der Bytes -Lese -System.Out.println (neuer String (BT, 0, Count)); // Bytes in Zeichenfolge konvertieren, um FileInputStream.close ();} anzuzeigen
4. Puffer und Schleife kombinieren. Der Puffer ist im Allgemeinen auf ein Vielfaches von 1024 eingestellt. Je größer der Puffersatz ist, desto höher ist die Lese -Effizienz.
byte [] bt = neues byte [1024]; int count = 0; while ((count = fileInputStream.read (bt))! }
// Methode vier Loops werden mit Puffer (hohe Effizienz) public static void test4 () kombiniert. Der Puffer ist im Allgemeinen auf Multiples von 1024 eingestellt. Theoretisch ist der Puffersatz, je höher der Leseeffizienz -Byte [] bt = neues Byte [1024]; int count = 0; // Wenn Reads zurückgibt, wird nachgewiesen, dass ((Count = FileInputStream) (countEnputstream.Read) (bt). System.out.println (neuer String (BT, 0, count));} fileInputStream.close (); Long EndTime = System.currentTimemillis (); System.out.println ("Zeit zum Lesen der Datei:"+(Endime-StartTime));}Momo sagte:
Im obigen Vergleich der zweiten und vierten Methoden werden Sie feststellen, dass die Effizienz von Methode 4 relativ hoch ist, sodass die vier empfohlenen Methoden verwendet werden
Hier werfen wir direkt Ausnahmen, zusätzlich zum Werfen können wir auch verwenden
try{ }cater{ }finally{ }
Ausnahmen zu bewältigen
Das obige ist die Verwendung von InputString (), dem Eingangsstrom von Java IO -Stream, der Ihnen vorgestellt wurde. Ich hoffe, es wird Ihnen hilfreich sein. Wenn Sie Fragen haben, hinterlassen Sie mir bitte eine Nachricht und der Editor wird Ihnen rechtzeitig antworten. Vielen Dank für Ihre Unterstützung auf der Wulin.com -Website!