Lendo arquivo .txt

3 respostas
A

Ola sou iniciante no java e tenho algumas duvidas em relação a leitura de carcteres, bom é o seguinte eu tenho esse programa e ele le todas os caracteres do arquivo exelente, so que eu não preciso ler a linha inteira eu preciso somente ler alguns caracteres da linha sera que alguem pode me ajudar a fazer isso ??

O programa é esse :

import java.io.*;

public class LeituraTxt

{

public static final int READ  = 0;

public static final int WRITE = 1;

public static final int NONE  = 2;

private String fname;

private int modo = NONE;

private FileReader arqreader = null;

private FileWriter arqwriter = null;

public static String linha;

public void open(String fn,int m){

modo = m;

fname = fn;

try{

if (modo == READ)

arqreader = new FileReader(fname);

else

arqwriter = new FileWriter(fname,true);

}catch(IOException e){

System.out.println(e.getMessage());

modo = NONE;

}

}
public void create(String fn){

modo = WRITE;

fname = fn;

try{ arqwriter = new FileWriter(fname); }

catch(IOException e){

System.out.println(e.getMessage());

modo = NONE;

}

}
public void write(String s){

try{

arqwriter.write(s+"\n");

}

catch(IOException e){

System.out.println(e.getMessage( )); }

}
public String read(){

try{

String buf = “”;   int c;

do{

c = arqreader.read();

if (c == -1) return(null);

if (c != ‘\n’) buf = buf + (char)c;

System.out.println ("Caracter lido "+ (char)c);

System.out.println("Conteudo atual do buffer: "+buf);

}

while(arqreader.ready() && (c != ‘\n));

return(buf);

}  catch(IOException e){

System.out.println(e.getMessage());

return(“eof”);

}

}

public void close(){

try{

if (modo == READ) arqreader.close();

if (modo == WRITE) arqwriter.close();

}catch(IOException e){

System.out.println(e.getMessage());

}

arqreader = null; arqwriter = null; modo = NONE;

}
public static void main(String args[])

{

LeituraTxt st = new LeituraTxt();

st.open(c:/dados.txt, READ);//Localização do arquivo txt
while ((linha = st.read())!= null)
  System.out.println(linha);
st.close();

}
}

3 Respostas

Juliano_Pedroso_da_S

Dá uma olhada em Expressões Regulares

http://guia-er.sourceforge.net/sobre.html

E nas classes do package java.IO

http://www.ticket.t5.com.br/fernandoans/cartoes/FAnsJavaIO.pdf

Richeli

Se vc quer um nº certo de caracteres Vc pode criar um contador e fazer uma repetição até que chegue ao número de caracteres que vc deseja!
Agora se vc quer alguns caracteres em especial faça por comparação. Crie um array com os caracteres q vc quer e compare os que vc está lendo com aqueles que estão no array.

A

Tipo assim é um aquivo txt de marcações de ponto eletronico entao ele gera alguns itens o que eu preciso é do horario a data e o numero do cracha ! entao são alguns carcteres em especifico !

Criado 25 de julho de 2007
Ultima resposta 25 de jul. de 2007
Respostas 3
Participantes 3