Arquivos e Fluxos

2 respostas
J

gostaria de saber quais as classes da java para manipular arquivos .txt

por exemplo… por quebra de linha, leitura e alteração no arquivo etc…

obrigado [ ]

2 Respostas

L

Estas:

  • FileWriter
  • FileReader
  • BufferedWriter
  • BufferedReader

Basicamente da uma olhada em classes que extendam Reader e Writer, que estas são para streams de caracters

File f = new File("arquivo");
         
         FileWriter fw = new FileWriter(f);
         BufferedWriter bw = new BufferedWriter(fw);
         bw.newLine();
         bw.write("ola");
         
         FileReader fr = new FileReader(f);
         BufferedReader br = new BufferedReader(fr);
         String linha = br.readLine();
J

ok, estou conseguindo ler um arquivo e gravar em outro

mas tenho outra dúvida, preciso deixar as linhas do arquivo da seguinte forma:

~v005xB000001122~v005x20051011175151~v020a~v041a
~v006xB000001133~v005x20051011175152~v020b~v041a
~v007xB000001144~v005x20051011175113~v020c~v041a
~v008xB000001155~v005x20051011175154~v020d~v041a

observe que há um ordanamento

mas as linhas estão no presente momento assim:

~v005xB000001122~v005x20051011175151~v020a~v041a
~v005xB000001133~
v006x20051011175152~v020b~v041a
~v005xB000001144~
v005x20051011175113~v020c~v041a
~v005xB000001155~v005x20051011175154~v020d~v041a

preciso fazer a leitura das linhas de forma que eu possa manipular de forma total, levmos em conta que toda a linha inicialmente tem um identificador ~v005… preciso usar \n, \b etc…?

por gentileza, como faço isso?

while ((text = input.readLine()) != null){

if (text.startsWith("~v001"))

buffer.append(text + “\n);

else

buffer.append(text);

}
input.close();
                
                outputArea.append(buffer.toString());
                
                String nomArq = "c:\\uergs_arq.txt";
                
                StringBuffer strb = new StringBuffer();
                

                
                PrintWriter saida = new PrintWriter(new FileWriter(nomArq));
                saida.println(buffer);
                saida.close();
Criado 11 de abril de 2007
Ultima resposta 16 de abr. de 2007
Respostas 2
Participantes 2