Gostaria de acessar uma linha específica de um arquivo texto, tenho como fazer isso? ou preciso percorre-lo inteiro até chegar a linha que quero?
:shocked!:
[quote=“Gizelma”]Gostaria de acessar uma linha específica de um arquivo texto, tenho como fazer isso? ou preciso percorre-lo inteiro até chegar a linha que quero?
:shocked!:[/quote]
Infelizmente você tem de percorrer mesmo.
Na verdade você só conseguiria pular para a linha desejada diretamente se
a) o arquivo já estivesse lido em um array (por exemplo, um ArrayList), ou
b) se todas as linhas tivessem exatamente o mesmo comprimento (tamanho em bytes).
No caso b), você usaria um RandomAccessFile, mas nesse caso você teria de lidar com bytes, não com caracteres e linhas.
Como Nosso Amigo Disse, java.io usa varios metodos de acesso sequencial ou seja do inicio ao fim, mais exite a classe RandomAccessFile que utiliza acesso aleatorio, segue abaixo duas linha do meu arquivo nada.txt;
Classe teste
Essa e a segunda linha
então se vc quiser ler a segunda linha segue o codigo:
public void aleatorio()
{
try{
RandomAccessFile leitura = new RandomAccessFile("nada.txt","r");
leitura.seek(14);
String linha = leitura.readLine();
System.out.println(linha);
}
catch(IOException e)
{
e.printStackTrace();
}
}
Mais como nosso amigo ai disse vc tera que referencia com o numero fixo de caracter para poder associar linhas de acordo com seu codigo espero ter ajudado qualquer coisa pergunta ai >>>!!