FileInputStream Clase
- java.
lang. Object - InputStream
- com.
microsoft. azure. storage. file. FileInputStream
- com.
public class FileInputStream
Proporciona un flujo de entrada para leer un recurso de archivo determinado.
Resumen del constructor
Constructor | Description |
---|---|
FileInputStream(final CloudFile parentFile, final AccessCondition accessCondition, final FileRequestOptions options, final OperationContext opContext) |
Inicializa una nueva instancia de la clase FileInputStream. |
Resumen del método
Modificador y tipo | Método y descripción |
---|---|
synchronized int |
available()
Devuelve una estimación del número de bytes que se pueden leer (o omitir) de esta secuencia de entrada sin bloquear la siguiente invocación de un método para esta secuencia de entrada. La siguiente invocación podría ser el mismo subproceso u otro subproceso. Una sola lectura o omisión de estos muchos bytes no se bloqueará, pero puede leer o omitir menos bytes. |
synchronized void |
close()
Cierra este flujo de entrada y libera los recursos del sistema asociados a la secuencia. |
synchronized void |
mark(final int readlimit)
Marca la posición actual en este flujo de entrada. Una llamada posterior al método reset cambia la posición de esta secuencia en la última posición marcada para que las lecturas posteriores vuelvan a leer los mismos bytes. |
boolean |
markSupported()
Comprueba si esta secuencia de entrada admite los métodos mark y reset. Si se admiten o no marcas y restablecimientos es una propiedad invariable de una instancia de flujo de entrada determinada. El método markSupported de InputStream devuelve false. |
int |
read()
Lee el siguiente byte de datos del flujo de entrada. El byte de valor se devuelve como un valor int en el intervalo de 0 a 255. Si no hay ningún byte disponible porque se ha alcanzado el final de la secuencia, se devuelve el valor -1. Este método se bloquea hasta que los datos de entrada están disponibles, se detecta el final de la secuencia o se produce una excepción. |
int |
read(final byte[] b)
Lee algún número de bytes del flujo de entrada y los almacena en la matriz de búfer . El número de bytes leídos realmente se devuelve como un entero. Este método se bloquea hasta que los datos de entrada están disponibles, se detecta el final del archivo o se produce una excepción. Si la longitud de es cero, no se lee ningún bytes y se devuelve 0; de lo contrario, hay un intento de leer al menos un byte. Si no hay ningún byte disponible porque la secuencia está al final del archivo, se devuelve el valor -1; de lo contrario, se lee y almacena al menos un byte en . La primera lectura de bytes se almacena en el elemento , la siguiente en , etc. El número de bytes leídos es, como máximo, igual que la longitud de . Vamos a ser el número de bytes leídos realmente; estos bytes se almacenarán en elementos a través de , dejando los elementos sin verse afectados. El método para la clase InputStream tiene el mismo efecto que: |
int |
read(final byte[] b, final int off, final int len)
Lee hasta bytes de datos del flujo de entrada en una matriz de bytes. Se intenta leer tantos bytes como bytes, pero se puede leer un número menor. El número de bytes leídos realmente se devuelve como un entero. Este método se bloquea hasta que los datos de entrada están disponibles, se detecta el final del archivo o se produce una excepción. Si es cero, no se leen bytes y se devuelve 0; de lo contrario, hay un intento de leer al menos un byte. Si no hay ningún byte disponible porque la secuencia está al final del archivo, se devuelve el valor -1; de lo contrario, se lee y almacena al menos un byte en . La primera lectura de bytes se almacena en el elemento , la siguiente en , etc. El número de bytes leídos es, como máximo, igual que . Vamos a ser el número de bytes leídos realmente; estos bytes se almacenarán en elementos a través de , dejando los elementos sin verse afectados. En cada caso, los elementos a través de y a través de no se ven afectados. El método para la clase InputStream simplemente llama al método repetidamente. Si la primera llamada de este tipo da como resultado una excepción , esa excepción se devuelve de la llamada al método . Si alguna llamada posterior a da como resultado un , la excepción se detecta y se trata como si fuera el final del archivo; los bytes leídos hasta ese punto se almacenan en y el número de bytes leídos antes de que se devuelva la excepción. La implementación predeterminada de este método se bloquea hasta que se haya leído la cantidad solicitada de datos de entrada, se detecte el final del archivo o se produzca una excepción. Se recomienda que las subclases proporcionen una implementación más eficaz de este método. |
synchronized void |
reset()
Cambia la posición de esta secuencia a la posición en el momento en que se llamó por última vez al método mark en esta secuencia de entrada. Tenga en cuenta que cambiar la posición de la secuencia de lectura de archivos deshabilitará la comprobación md5 del archivo. |
synchronized long |
skip(final long n)
Omite y descarta n bytes de datos de esta secuencia de entrada. El método skip puede, por diversos motivos, terminar omitiendo un número menor de bytes, posiblemente 0. Esto puede resultar de cualquiera de una serie de condiciones; alcanzar el final del archivo antes de que se omitan n bytes es solo una posibilidad. Se devuelve el número real de bytes omitidos. Si n es negativo, no se omite ningún bytes. Tenga en cuenta que cambiar la posición de la secuencia de lectura de archivos deshabilitará la comprobación md5 del archivo. |
Detalles del constructor
FileInputStream
protected FileInputStream(final CloudFile parentFile, final AccessCondition accessCondition, final FileRequestOptions options, final OperationContext opContext)
Inicializa una nueva instancia de la clase FileInputStream.
Parameters:
Throws:
Detalles del método
available
public synchronized int available()
Devuelve una estimación del número de bytes que se pueden leer (o omitir) de esta secuencia de entrada sin bloquear la siguiente invocación de un método para esta secuencia de entrada. La siguiente invocación podría ser el mismo subproceso u otro subproceso. Una sola lectura o omisión de estos muchos bytes no se bloqueará, pero puede leer o omitir menos bytes.
Returns:
int
representa una estimación del número de bytes que se pueden leer (o omitir) de esta secuencia de entrada sin bloqueo, o 0 cuando llega al final del flujo de entrada.Throws:
close
public synchronized void close()
Cierra este flujo de entrada y libera los recursos del sistema asociados a la secuencia.
Throws:
mark
public synchronized void mark(final int readlimit)
Marca la posición actual en este flujo de entrada. Una llamada posterior al método reset cambia la posición de esta secuencia en la última posición marcada para que las lecturas posteriores vuelvan a leer los mismos bytes.
Parameters:
int
representa el límite máximo de bytes que se pueden leer antes de que la posición de marca no sea válida.
markSupported
public boolean markSupported()
Comprueba si esta secuencia de entrada admite los métodos mark y reset. Si se admiten o no marcas y restablecimientos es una propiedad invariable de una instancia de flujo de entrada determinada. El método markSupported de InputStream devuelve false.
Returns:
True
si esta instancia de secuencia admite los métodos mark y reset; False
Lo contrario.
read
public int read()
Lee el siguiente byte de datos del flujo de entrada. El byte de valor se devuelve como un valor int en el intervalo de 0 a 255. Si no hay ningún byte disponible porque se ha alcanzado el final de la secuencia, se devuelve el valor -1. Este método se bloquea hasta que los datos de entrada están disponibles, se detecta el final de la secuencia o se produce una excepción.
Returns:
int
representa el número total de bytes leídos en el búfer o -1 si no hay más datos porque se ha alcanzado el final de la secuencia.Throws:
read
public int read(final byte[] b)
Lee algún número de bytes del flujo de entrada y los almacena en la matriz de búfer . El número de bytes leídos realmente se devuelve como un entero. Este método se bloquea hasta que los datos de entrada están disponibles, se detecta el final del archivo o se produce una excepción. Si la longitud de es cero, no se lee ningún bytes y se devuelve 0; de lo contrario, hay un intento de leer al menos un byte. Si no hay ningún byte disponible porque la secuencia está al final del archivo, se devuelve el valor -1; de lo contrario, se lee y almacena al menos un byte en .
La primera lectura de bytes se almacena en el elemento , la siguiente en , etc. El número de bytes leídos es, como máximo, igual que la longitud de . Vamos a ser el número de bytes leídos realmente; estos bytes se almacenarán en elementos a través de , dejando los elementos sin verse afectados.
El método para la clase InputStream tiene el mismo efecto que:
Parameters:
byte
que representa el búfer en el que se leen los datos.
Throws:
byte
matriz b
es null.
read
public int read(final byte[] b, final int off, final int len)
Lee hasta bytes de datos del flujo de entrada en una matriz de bytes. Se intenta leer tantos bytes como bytes, pero se puede leer un número menor. El número de bytes leídos realmente se devuelve como un entero. Este método se bloquea hasta que los datos de entrada están disponibles, se detecta el final del archivo o se produce una excepción.
Si es cero, no se leen bytes y se devuelve 0; de lo contrario, hay un intento de leer al menos un byte. Si no hay ningún byte disponible porque la secuencia está al final del archivo, se devuelve el valor -1; de lo contrario, se lee y almacena al menos un byte en .
La primera lectura de bytes se almacena en el elemento , la siguiente en , etc. El número de bytes leídos es, como máximo, igual que . Vamos a ser el número de bytes leídos realmente; estos bytes se almacenarán en elementos a través de , dejando los elementos sin verse afectados.
En cada caso, los elementos a través de y a través de no se ven afectados.
El método para la clase InputStream simplemente llama al método repetidamente. Si la primera llamada de este tipo da como resultado una excepción , esa excepción se devuelve de la llamada al método . Si alguna llamada posterior a da como resultado un , la excepción se detecta y se trata como si fuera el final del archivo; los bytes leídos hasta ese punto se almacenan en y el número de bytes leídos antes de que se devuelva la excepción. La implementación predeterminada de este método se bloquea hasta que se haya leído la cantidad solicitada de datos de entrada, se detecte el final del archivo o se produzca una excepción. Se recomienda que las subclases proporcionen una implementación más eficaz de este método.
Parameters:
byte
que representa el búfer en el que se leen los datos.
int
representa el desplazamiento inicial de la matriz en la byte
que se escriben los datos.
int
representa el número máximo de bytes que se van a leer.
Returns:
int
representa el número total de bytes leídos en el búfer o -1 si no hay más datos porque se ha alcanzado el final de la secuencia.Throws:
byte
matriz b
es null.
off
es negativo, len
es negativo o len
es mayor que b.length - off
.
reset
public synchronized void reset()
Cambia la posición de esta secuencia a la posición en el momento en que se llamó por última vez al método mark en esta secuencia de entrada. Tenga en cuenta que cambiar la posición de la secuencia de lectura de archivos deshabilitará la comprobación md5 del archivo.
Throws:
skip
public synchronized long skip(final long n)
Omite y descarta n bytes de datos de esta secuencia de entrada. El método skip puede, por diversos motivos, terminar omitiendo un número menor de bytes, posiblemente 0. Esto puede resultar de cualquiera de una serie de condiciones; alcanzar el final del archivo antes de que se omitan n bytes es solo una posibilidad. Se devuelve el número real de bytes omitidos. Si n es negativo, no se omite ningún bytes.
Tenga en cuenta que cambiar la posición de la secuencia de lectura de archivos deshabilitará la comprobación md5 del archivo.
Parameters:
long
representa el número de bytes que se van a omitir.
Se aplica a
Azure SDK for Java