Em Java, um objeto InputStream representa uma fonte de um fluxo de bytes. Os bytes podem vir de um arquivo, uma conexão de rede , um tubo ou outras possíveis fontes . O tema comum é que , embora o programa pode solicitar que um determinado número de bytes ser lido , o fluxo pode retornar menos bytes - e, portanto, necessitam de várias leituras para entregar a mensagem completa. Você pode ler qualquer número de bytes de um InputStream em seu código Java, enquanto você lida com essa condição corretamente. Instruções
um
Inclua a seguinte linha no início do seu código Java :
import java.io. *;
2
Declare as seguintes variáveis em preparação para a leitura do fluxo :
int currOffset = 0;
int lastRead = 0;
3
Ler a partir da InputStream usando um loop até que todos os bytes necessários foram lidos, como no seguinte exemplo de código :
while ( currOffset < numBytes
&& ( lastRead = Stream.Read (buffer, currOffset , numBytes - currOffset ) ) > = 0) {
currOffset + = lastRead ;
}
Substitua o " tampão" com o local onde você deseja armazenar os bytes de entrada a partir do InputStream , e " numBytes " com o número total de bytes que você precisa ler .