Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

java i.o

Olá, Tenho que fazer escrita e leitura em arquivos muitos grandes. Para leitura uso logica abaixo

inpFile = new FileInputStream(filename);
inp = new BufferedRead(new InputStreamReader(inpFile, buffSize);

Para escrita

outFile = new FileInputStream(filename, true);
out= new PrintStream(new BufferedOutputStream((outFile, buffSize));

Inicialmente tenho buffsize = 1048576

Gostaria de saber vantagens e desvantagens em diminuir o valor do buffSize

Atenciosamente, Christiane

1 resposta
solução!

O buffer existe para otimizar operações de E/S ( Entrada e saída), se for pequeno demais, faz-se mais leituras ou escritas. Se for grande demais, pode exaurir a memória. De uma maneira prática, escolha um tamanho que seja compatível com o sistema de arquivos do sistema operacional. Por exemplo, o Windows com NTFS tem um bloco de 4096 bytes, se não estou errado, então um 'buffer' de 4096 bytes estará bem otimizado para a maioria dos casos.

Procure ler esse artigo,http://www.clubedohardware.com.br/artigos/sistema-de-arquivos/313, para se familiarizar com o assunto