Bom dia;
Iniciando mais um projeto.
Estou recebendo um arquivo txt do cliente com aproximadamente 200.000 registros.
Preciso validar campos como cpf, rg, data emissao e em seguida armazenar na base de dados.
Dados do txt por linha
23333477818270220999SPSSP 20091603
23333477818270220999SPSSP 20091603
23333477818270220999SPSSP 20091603
Através do codigo consegui ler apenas a primeira linha…Preciso ler as demais…
Obrigado. Anderson.
package alistamento;
import java.io.BufferedReader;
import java.io.FileReader;
import java.util.StringTokenizer;
public class Main {
public void arquivo() {
String linha = null;
try {
FileReader reader = new FileReader("Projeto.txt"); //ARRUMAR......Usuario precisa escolher o diretorio onde localiza o txt
BufferedReader leitor = new BufferedReader(reader);
StringTokenizer st = null;
while ((linha = leitor.readLine()) != null) {
st = new StringTokenizer(linha, "\t");
String dados = null;
while (st.hasMoreTokens()) {
// Campo 1
dados = st.nextToken();
System.out.println(dados);
System.out.println("Tokens encontrados " + st.countTokens());
// Campo 2
dados = st.nextToken();
System.out.println(dados);
System.out.println("-------");
}
}
leitor.close();
reader.close();
} catch (Exception e) {
e.printStackTrace();
}
}
public static void main(String[] args) {
Main t = new Main();
t.arquivo();
}
}
Retornou o erro:
run:
java.util.NoSuchElementException
23333477818270220999SPSSP 20091603
Tokens encontrados 0
at java.util.StringTokenizer.nextToken(StringTokenizer.java:332)
at alistamento.Main.arquivo(Main.java:42)
at alistamento.Main.main(Main.java:58)
CONSTRUÍDO COM SUCESSO (tempo total: 0 segundos)