Ler byte

Galera tenho um InputStream ai o que eu quero.

Exemplo: Tenho um arquivo qualquer, ai pego o tamanho em bytes dele com:

tamanhoArquivo = fin.getChannel().size();

fin é um FileInputStream até ai acho que esta correto, é tamanho em bytes que ele retorna ne ?

No meu caso ele retorn 174

Quero ler esse arquivo por exemplo, só do byte 50 ao 174 entende.

tentei assim:

byte[] bytes = new byte[200];
in.read(bytes,50,174);
outFile.write(bytes);

mas dá pau, bom o que posso fazer é ficar lendo ele em um for, mas deve ter outro jeito.

Bom aguardo respostas, valeu pessoal
Abraços

Tente assim:

[code]int tam = //tamanho do arquivo
int inicio = 50;

byte[] bytes = new byte[200];

in.read(bytes, inicio, tam-inicio);[/code]