1. Clasificación de transmisiones IO
Transmisión de carácter
Lector
InputStreamReader (transmisión de nodo)
BufferedReader (flujos de procesamiento)
Escritor
OutputStreamWriter (transmisión de nodo)
BufferedWriter (flujos de procesamiento)
Printwriter
Transmisión de bytes
InputStream
FileInputStream (transmisión de nodo)
BufferedInputStream (flujos de procesamiento)
ObjectInputStream (flujos de procesamiento)
Printstream
OutputStream
FileOutputStream (transmisión de nodo)
BufferedOutputStream (flujos de procesamiento)
ObjectOutputStream (flujos de procesamiento)
Flujo de procesamiento de punto de interrupción
Archivo randomaccess
2. Uso de transmisiones IO
1. Uso de las corrientes de conversión
FileInputStream in = new FileInputStream (newFile ("")); ReaderReader = new InputStreamReader (in); // byte a caracteres fileOutputStreamOut = new FileOutputStream (newFile ("")); Escritor escritor = new outputStreamWriter (out); // charact a byte2. Serialización del objeto, el objeto debe implementar la interfaz Serializable
FileOutputStreamFileOutputStream = nuevo FileOutputStream ("c: //users//lx//desktop//record.txt"); ObjectOutputStreamObjectOutputStream = new ObjectOutputStream (fileOutputStream); ObjectOutputStream.WriteObject (objeto); // Escribir objeto al archivo especificado ObjectOutputStream.close (); FileInputStreamFileInputStream = new FileInputStream ("c: //users//lx//desktop//record.txt"); ObjectInputStreamObjectInputStream = new ObjectInputStream (fileInputStream); Object = ObjectInputStream.ReadObject (); // lee el objeto objeto fileInputStream.Lose ();3. Aplicación de puntos de interrupción
La copia de clase pública extiende el hilo {// Puede usar MultIThread para realizar copiar a LongStart; longend; filesorcy this.start = inicio; this.end = end; this.sorce = sort; this.targetDir = targetDir;}@anverride publicvoid run () {try {randomAccessFilesOUCeraf = new RandomAccessFile (Sorce, "R"); RandomACSessFiletArtRaf = new New RandomAccessFile (newFile (TargetDir, Sorce.getName ()), "RW"); SoUceraf.seek (Start); TargetRaf.seek (Start); intlen = 0; Byte [] bs = New Byte [1024]; Longseek; System.out.Println (inicio+"--->"+End+this.getName ();); SoUceraf.Read (BS))! =-1) {TargetRaf.Write (BS, 0, len); Seek = SoUceraf.getFilePointer (); // Get Breakpoint Position if (Seech == End) {break;}} TargetRaf.close (); SoUceraf.Close ();}4. Uso de transmisiones de bytes
public class test_inputstream {// use transmisiones de byte para obtener contenido de archivo de texto, pero los problemas son propensos a ocurrir/* // int longitud puede estar fuera de los límites public static void main (string [] args) lanza ioexception {inputStream inputStream = new FileInputstream (nuevo archivo ("c: //Users//lx//DeskTOp//test//3.txt"); byte [] b = nuevo byte [inputStream.available ()]; inputStream.read (b); Cadena str = nueva cadena (b); System.out.println (str); }*/// El código de confusión puede aparecer public static void main (string [] args) lanza ioexception {archivo archivo = nuevo archivo ("c: //users//lx//desktop//test//33.txt"); inputStream inputStream = new FileStStream (archivo);/estadísticas La longitud real de cada lectura de cada lectura = 0; // Declares 1024 byte [] b = nuevo byte [2]; stringbuffer sbuffer = new StringBuffer (); while ((len = inputStream.read (b))! =-1) {sbuffer.append (new String (b, 0, len));} system.out.println (sbuffer.ToString ());}} // Copie el archivo usando byte public public void Copy (File SourceFile, File TargetDir) {// FileInput SAMFILEMFILEI null; fileoutputStreamFileOutputStream = null; fileInputStream = new FileInputStream (fuenteFile); fileTargetFile = new File (targetDir, fuente.getNEntName ()); FileOutStream = new FileOutPutSeam (TargetFile); byte [] b = new byte [1024]; intlen = 0; while ((leneOutputPutsream (targetFile); byte [] b = new byte [1024]; intlen = 0; while ((leneutputPutPream (targetFile); byte [] b = new byte [1024]; intlen = 0; when ! = -1) {fileOutputStream.Write (b, 0, len);}}5. Uso de transmisiones de personajes en caché
publicstatic void main (string [] args) lanza IOException {// implementación de la transmisión de caracteres en caché para escribir archivos inputStreamin = system.in; readerReader = new InputStreamReader (in); BufferedReaderbr = New BufferedReader (Reader); BufferedWriterBW = New BufferedWriter (New FileWriter (nuevo (nuevo NewWel Archivo ("src/1.txt"))); strings = ""; while ((s = br.readline ())! = Null) {bw.write (s); bw.newline (); bw.flush (); // flujos de caracteres no olvides FLUSH !!!!!!)Resumir
Lo anterior es todo el contenido de este artículo sobre el análisis del código de conocimiento relacionado con Java Io Stream, espero que sea útil para todos. Los amigos interesados pueden continuar referiéndose a otros temas relacionados en este sitio. Si hay alguna deficiencia, deje un mensaje para señalarlo. ¡Gracias amigos por su apoyo para este sitio!