Recuerdo que cuando comencé a aprender Java, no entendí la transmisión de Java Io, así que escribí este ensayo y esperaba que fuera útil para aquellos que acaban de aprender a Java y facilitaron su consulta en el futuro. Las transmisiones Java IO se dividen en transmisiones de personajes (lector, escritor) y transmisiones de bytes (inputStream, outputStream). Las transmisiones de byte, como su nombre indica, las transmisiones de bytes son leer el contenido de los archivos en las matrices de bytes y luego emitirlos a otro archivo. La unidad más pequeña de operaciones de transmisión de personajes son los caracteres. Echemos un vistazo a la descripción general de IO Streams:
Lo siguiente es lo primero que debe leer y escribir el archivo a través de una transmisión de caracteres:
paquete lib; import java.io.bufferedReader; import java.io.file; import java.io.filenotfoundException; import java.io.filereader; import java.io.filewriter; import f = newexception; import java.io.printner; clase pública Test {// Define el archivo File Fe Archivo ("f: //test.txt"); // Método para escribir la transmisión de caracteres Public String WriteInFile () lanza IOException {String str = ""; String count = ""; intente {// use la transmisión de caracteres para leer el archivo BufferedReader bf = new BufferedReader (new FileReader (f)); while (true) {// lea cada línea de datos y asigna a str if ((count = bf.readline ())! = null) {str += count; } else {break; }} // Cierre la transmisión bf.close (); } catch (FileNotFoundException e) {E.PrintStackTrace (); } return str; } // Método para la lectura de transmisión de personajes public void getreader () {try {// donde verdadero significa agregar al final del contenido del archivo original. Si no está escrito, significa vaciar el archivo y agregar el contenido. PrintWriter pw = new PrintWriter (New FileWriter (F, True)); pw.Write ("Prueba la cadena de entrada al archivo 2"); pw.close (); } catch (ioException e) {E.PrintStackTrace (); }} public static void main (string [] args) lanza ioexception {test test = new test (); // Ingrese la cadena en el archivo test.getReader (); // Leer la cadena correspondiente Str = test.WriteInFile (); // abrir System.out.println ("Contenido del archivo:"+Str); }}Hay comentarios en los puntos clave del código anterior, por lo que no entraré en detalles uno por uno. Lo principal es que no olvides cerrar después de usar la transmisión.
Luego opere en el archivo a través de una transmisión de byte, copiando el contenido de un archivo a otro:
paquete com.file.test2; import java.io.file; import java.io.fileInputStream; import java.io.filenotfoundException; import java.io.fileutputStream; import java.io.ioException; public class testfile2 { /lea y escriba archivos utilizando transmisiones de byte, copiar un archivo a otro público static void main (stilings) IoException {// El archivo de origen se copiará f = nuevo archivo ("d: //test.txt"); // Archivo de destino Archivo f2 = nuevo archivo ("d: //test2.txt"); // Defina una matriz de tipo de byte para almacenar el contenido de lectura byte [] b = nuevo byte [1024]; int longitud; Pruebe {// Defina el flujo de lectura FileInputStream in = new FileInputStream (f); // Defina la salida de transmisión al archivo FileOutputStream Out = new FileOutputStream (F2); // emite el contenido del archivo a otro archivo while ((longitud = in.read (b))! =-1) {out.write (b, 0, longitud); } out.close (); cercar(); } catch (FileNotFoundException e) {E.PrintStackTrace (); }}}En la operación de la secuencia de bytes, el archivo fuente en la línea 13 debe existir. Puede cambiar la ruta del archivo usted mismo según sea necesario. Solo necesitas existir. De lo contrario, se informará un error que no se puede encontrar el archivo. Al mismo tiempo, si desea emitir el contenido de la secuencia de bytes de lectura en la consola, puede agregar dos códigos entre las líneas 27 y 28: in.read (b, 0, b.length); system.out.println (nueva cadena (b));
Las anteriores son operaciones relacionadas de transmisiones de caracteres y transmisiones de bytes. De hecho, el código no es difícil, se trata principalmente de la propia comprensión. Todos tendrán diferentes formas de entender los mismos problemas. Por supuesto, para nosotros los programadores, además de pensar más, también necesitamos hacer más. Finalmente, espero que el contenido anterior sea útil para todos, y continúe apoyando este sitio.