En Java, un objeto InputStream representa una fuente de un flujo de bytes . Estos bytes pueden provenir de un archivo, una conexión de red , una tubería o de otras fuentes posibles . El tema común es que, aunque el programa puede solicitar que se lea un número determinado de bytes , la corriente puede devolver menos bytes - y por lo tanto requieren varias lecturas para entregar el mensaje completo . Usted puede leer cualquier número de bytes desde un InputStream en el código Java , siempre y cuando usted maneja esta condición correctamente. Instrucciones
1
incluir la siguiente línea en el inicio de su código Java:
import java.io. * ;
2
Declarar las siguientes variables en preparación para la lectura de la corriente :
currOffset int = 0 ;
lastRead int = 0 ;
3
Leer desde el InputStream con un asa hasta que todos los bytes necesarios han sido leídos , como en el siguiente ejemplo de código:
while ( < currOffset numBytes
&&
( lastRead = Stream.Read (buffer, currOffset , numBytes - currOffset ) ) > = 0 ) {
currOffset + = lastRead ;
}
Sustitúyase " tampón " con la ubicación en la que desea almacenar los bytes entrantes desde el InputStream y " numBytes " con el número total de bytes que necesita para leer .