Este artículo presenta principalmente el uso de las transmisiones de Java InputStream.
(1) FileInputStream: subclase, canal para leer datos
Pasos para usar:
1. Obtenga el archivo de destino: nuevo archivo ()
2. Cree un canal: nuevo FileInputString ()
3. Leer datos: Read ()
4. Recursos de liberación: Close ()
// Algunos paquetes se importarán por importación predeterminada java.io.file; import java.io.fileInputStream; import java.io.ioException;
public static void main (string [] args) lanza IOException {// TODO Método Generado automático STUB // Llamando métodos para ver el efecto test1 (); System.out.println ("---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -------------------------------------------------------------------------------------------(2) Tres formas de leer datos
1. Lea directamente (solo un byte a la vez)
int date = fileInputStream.read (); char date3 = (char) fileInputStream.read ();
//Print public static void test1() throws IOException{//(1) Get the target file path File file = new File("C://Users//joke//Desktop//Demo1.java");//(2) Create a channel based on the target file path: new FileInputStream(file)FileInputStream fileInputStream = new FileInputStream(file);//(3) Read datos: read (); int date = fileInputStream.read (); // Aquí está int type int date2 = fileInputStream.read (); // char date3 = (char) fileInputStream.read (); // show system.out.println (date+"//"+date2+"//"+date3); // (4) libera el recurso fileInputStream.close ();}2. Use solo para bucles (eficiencia de ine)
for (int i = 0; i <file.length (); i ++) {system.out.print ((char) fileInputStream.read ()); } //Method two-loop traversal public static void test2() throws IOException{//Test efficiency through time long startTime = System.currentTimeMillis();File file = new File("C://Users//joke//Desktop//Demo1.java");FileInputStream fileInputStream = new FileInputStream(file);//for loop for(int i = 0;3.byte [] buffer (solo puede leer el número especificado de bytes y no puede leer un archivo completo)
byte [] bt = nuevo byte [1024]; int count = fileInputStream.read (BT); System.out.println (nueva cadena (BT, 0, Count));
// Método 3 Crear un búfer (solo puede leer el tamaño especificado, no leer un archivo completo) public static void test3 () lanza ioexception {archivo archivo = nuevo archivo ("c: //users//joke//desktop//demo1.java"); fileInputStream FileInputSeM = New FileInsm. ser lea byte [] bt = new Byte [1024]; // Read () Read byte int count = fileInputStream.read (bt); system.out.println (count); // Mostrar el número de bytes lectura de lectura.out.println (nueva cadena (bt, 0, count)); // Convertir bytes en cadena para mostrar fileInputStream.close ();}4. Combinando búfer y bucle. El búfer generalmente se establece en un múltiplo de 1024. Cuanto más grande es el conjunto de búfer, mayor es la eficiencia de lectura.
byte [] bt = nuevo byte [1024]; int count = 0; while ((count = fileInputStream.read (bt))! = -1) {System.out.println (new String (Bt, 0, Count)); } //Method four loops are combined with buffer (high efficiency) public static void test4() throws IOException{//Test efficiency by time long startTime = System.currentTimeMillis();File file = new File("C://Users//joke//Desktop//Demo1.java");FileInputStream fileInputStream = new FileInputStream(file);//The El búfer generalmente se establece en múltiplos de 1024. Teóricamente, cuanto más grande sea el conjunto de búfer, mayor será la eficiencia de lectura byte [] bt = new byte [1024]; int count = 0; // Cuando la lectura devuelve -1, se demuestra que ((count = fileInputStream.read (bt))! = -1) {// Tipo de cadena (Conteo Longitudes comienza desde el 0th byte inte inte in bt) System.out.println (new String (BT, 0, Count));} fileInputStream.Close (); Long EndTime = System.CurrentTimemillis (); System.out.println ("Tiempo necesario para leer el archivo:"+(EndTime-starttime));}Momo dijo:
En lo anterior, comparando los métodos segundo y cuarto, encontrará que la eficiencia del método 4 es relativamente alta, por lo que se utilizan los cuatro métodos recomendados.
Aquí lanzamos directamente excepciones, además de lanzar, también podemos usar
try{ }cater{ }finally{ }
Para manejar excepciones
Lo anterior es el uso de InputString (), la secuencia de entrada de Java IO Stream introdujo a usted. Espero que te sea útil. Si tiene alguna pregunta, déjame un mensaje y el editor le responderá a tiempo. ¡Muchas gracias por su apoyo al sitio web de Wulin.com!