Numero de bytes em um InputStream!

ola pessoal, eu tenho um InputStream que representa um arquivo que eu to fazendo upload! Eu queria saber o tamanho desse inputstream, em bytes, para poder limitar o tamanho do arquivo que eu vou poder salvar! Como eu faco para pegar esse tamanho?

obrigado!

O método que retorna o tamanho do InputStream é available().

Bem intuitivo né??

“available” não dá o tamanho do InputStream*, mas a quantidade de bytes que estão disponíveis para serem lidos de uma única vez.
Se o InputStream for um FileInputStream, ele pode retornar o resto do arquivo, mas provavelmente você está lidando com alguma outra coisa; nesse caso “available” vai retornar algum outro valor.

  • Não faz sentido InputStream definir um tamanho. Ele poderia ser, por exemplo, um SocketInputStream que representa um socket que fica conectado indefinidamente.

Bom, de qualquer forma acho que era isso que ele queria saber, apesar da Insituição Thingol já ter explicado de uma maneira mais completa.