Java:InputStream.read()

De W3API
Saltar a: navegación, buscar

Contenido

Descripción

Método que realiza la lectura de los siguientes bytes de un InputStream. Si pasamos como parámetro un buffer, la lectura dejará el resultado sobre dicho buffer. Además, el método .read() nos permitirá indicar la cantidad de bytes a leer.

Si no indicamos la cantidad de bytes a leer y solo pasamos el buffer, la lectura leerá el número de bytes correspondiente con el tamaño del fichero.

Cuando la lectura no pueda leer bytes, ya que haya llegado al fin del stream el valor devuelto por .read() será -1.

Sintaxis

int read() 
int read(byte[] b)
int read(byte[] b, int off, int len)

Parametros

  • b, buffer sobre el que dejaremos los bytes resultado de la lectura.
  • off, indica la posición del buffer en la cual se almacenarán los bytes leídos.
  • len, número de bytes a leer.

Excepciones

IOException y NullPointerException

Clases Java a las que aplica

InputStream

Ejemplo

// Copiar ficheros
File origen = new File("origen.txt");
File destino = new File("destino.txt");

try {
  InputStream in = new FileInputStream(origen);
  OutputStream out = new FileOutputStream(destino);
				
  byte[] buf = new byte[1024];
  int len;

  while ((len = in.read(buf)) > 0) {
    out.write(buf, 0, len);
  }
		
  in.close();
  out.close();
} catch (IOException ioe){
  ioe.printStackTrace();
}

Lineas de Código

Herramientas personales
Espacios de nombres
Variantes
Acciones
API
Navegación
webs
Herramientas