Galera, estou criando um sistema em que irei gravar em um TXT em ordem de criação várias Ordens de Serviços (OS). Cada número da OS ficará em um linha.
Para criar as OS’s em ordens crescentes, eu pretendo pegar a última linha do TXT e acrescentar +1 em seu número identificador, e logo depois acrescentá-lo no TXT.
EX: se a última OS foi a OS de número 25 (e tem 24 OS’s acima dessa) a próxima, seria 26, pegando a ultima linha (que é 25) e acrescentando +1.
Achei soluções aqui mesmo no GUJ, mas utiliza o SKIP, porém como o arquivo é flexível, não tem tamanho fixo, não daria certo.
Percorrer todo o TXT e pegar a última seria a melhor solução, qual a forma mais prática de fazer isso?
Agradeço desde já.
Ler a última linha de um TXT em Java [RESOLVIDO]
P
4 Respostas
E
1 like
Para pegar a ultima linha
public static void main(String[] args) {
String ultimo = "";
try {
InputStream is = new FileInputStream("arquivo.txt");
InputStreamReader isr = new InputStreamReader(is);
BufferedReader br = new BufferedReader(isr);
String line = "";
while (line != null) {
line = br.readLine();
if (line != null) {
ultimo = line;
}
}
System.out.println(ultimo);
br.close();
} catch (IOException e) {
e.printStackTrace();
}
A
1 like
No commons-io da apache tem a classe ReversedLinesFileReader veja oq ue ela diz:
Reads lines in a file reversely (similar to a BufferedReader, but starting at
the last line). Useful for e.g. searching in log files.
P
1 like
Resolvido ! Obrigado galera !
@Eduardo_Maranata10 seu código funcionou certinho! Valeu
@aix Valeu pela dica mano, irei ler sobre !
E
Fico feliz por ter ajudado, Abraço
Criado 16 de fevereiro de 2016
Ultima resposta 18 de fev. de 2016
Respostas 4
Participantes 3
Alura POO: o que é programação orientada a objetos? Aprenda os conceitos básicos da programação orientada a objetos, como classes, objetos, herança, encapsulamento e polimorfismo, com exemplos.
Casa do Codigo Desbravando SOLID: Praticas avancadas para codigos de... Por Alexandre Aquiles — Casa do Codigo