Heim >Java >javaLernprogramm >Detaillierte Dateien und Streams in der Java-Sprache
Es gibt zu viele Klassen im Java-I/O-System. Ich glaube, wenn wir diese beherrschen, können wir unsere gemeinsamen Anwendungen in Zukunft lösen 🎜>1. Was ist Datenfluss?
Datenfluss bezieht sich auf alle Datenkommunikationskanäle
Es gibt zwei Arten von Streams: InputStream und OutputStream. Die Grundfunktionen jedes Streams basieren auf ihnen.
InputStream ist Wird zum Lesen verwendet und OutputStream wird zum Schreiben verwendet. Lesen und Schreiben beziehen sich auf den Speicher. Lesen bedeutet, Daten von anderen Orten in den Speicher zu übertragen, und Schreiben bedeutet, Daten aus dem Speicher zu verschieben
Beide handelt es sich um abstrakte Klassen, die nicht direkt verwendet werden können
2 Die Methoden von .InputStream sind:
read() Es gibt drei Möglichkeiten, Daten aus dem Stream zu lesen:
int read() Ein Byte nach dem anderen lesen
int read(byte[] ) Mehrere Bytes in das Array einlesen
int read(byte[],int off,int len) gibt an, wo im Array begonnen werden soll und wie lange gelesen werden soll
skip() überspringt eine Anzahl von Bytes im Stream
available() gibt den Stream zurück. Die Anzahl der im Stream verfügbaren Bytes, aber basierend auf dem Netzwerk ungültig, gibt 0 zurück.
markSupported() Ermitteln Sie, ob Markierungs- und Rücksetzvorgänge unterstützt werden.
mark() Markieren Sie eine Position im Stream, zur Verwendung in Verbindung mit markSupported()
reset () Gibt die markierte Position zurück
close() Schließt den Stream
3. OutputStream-Methode:
write(int) Schreibt ein Byte zum Stream
write(byte[]) Fügt das Array in das Array ein Schreibe den Inhalt in den Stream
write(byte[],int off,int len) Schreibe die len Länge der Daten im Array beginnend mit die durch off angegebene Position zum Stream
close() Schließt den Stream
flush() Erzwingt die Ausgabe der Daten im Puffer
4.Dateiklasse
Datei kann eine Datei oder ein Verzeichnis darstellen Die Dateiklasse steuert alle Festplattenoperationen
Konstruktor:
File(File parent,String child) verwendet die übergeordnete Klasse und den Dateinamen zum Erstellen
File(String pathname) verwendet den absoluten Pfad zum Erstellen von
File( String parent, String child) verwendet das übergeordnete Verzeichnis und den Dateinamen zum Erstellen von
File(URI uri) used remote files Construct
Allgemeine Methoden:
boolean createNewFile();
boolean exist();
Beispiel:
//Erstellen Sie das Dateiobjekt test.txt und stellen Sie fest, ob es existiert. Wenn es nicht existiert, dann erstellen Sie
import java.io.*;
public class CreateNewFile{
public static void main(String args[]){
File f=new File("test.txt") ;
try{
if(!f.exists())
f.createNewFile();
else
System.out.PRintln("exists");
}catch (Exception e){
e.printStackTrace();
}
}
}
boolean mkdir()/mkdirs()
boolean renameTo(File destination)
Beispiel: //Sehen Sie sich den Unterschied zwischen mkdir()/mkdirs() an und die Verwendung von renameTo
import java.io.*;
public class CreateDir{
public static void main(String args[ ]){
File f=new File("test.txt" );
Datei f1=neue Datei("Dir");
Datei f2=neue Datei("Oben/Unten");
Datei f3=neue Datei("newTest.txt");
try{
f.renameTo(f3);
f1.mkdir();
f2.mkdirs();
}catch(Exception e){
e.printStackTrace();
}
}
}
String getPath()/getAbsolutePath()
String getParent() /getName()
Beispiel: //Es gibt kein übergeordnetes Verzeichnis und test.txt-Datei auf der Festplatte, aber wir können trotzdem arbeiten, weil wir ihre Objekte erstellt und die Objekte bearbeitet haben
import java.io *;
public class Test{
public static void main(String args[]){
File f=new File("parent/test.txt");
File f1=new File( "newTest.txt");
try{
System.out .println(f.getParent());
System.out.println(f.getName());
System.out .println(f1.getPath());
System.out.println (f1.getAbsolutePath());
}catch(Exception e){
e.printStackTrace();
}
}
}
Das Obige ist das in -Detaillierter Inhalt von Java-Sprachdateien und -Streams. Weitere verwandte Artikel finden Sie auf der chinesischen PHP-Website (www.php.cn)!