Olá, tudo bem jovens? =D
Eu estou tendo dificuldades em ler um arquivo com caracteres “|” e separar as palavras por ele, é um arquivo que vem do bando itau aqui para a empresa, eu preciso criar um programa que leia o arquivo .csv e separe os campos por |, jogue em uma JTable para poder tratar os dados.
O que fiz até agora foi ler o arquivo, mas quando vou tratar com o split ele me traz apenas a primeira letra, não entendi o porque.
[code]import java.awt.BorderLayout;
import java.awt.EventQueue;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.border.EmptyBorder;
import javax.swing.JButton;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;
import java.io.IOException;
public class tratArquivo extends JFrame {
private JPanel contentPane;
/**
* Launch the application.
*/
public static void main(String[] args) {
EventQueue.invokeLater(new Runnable() {
public void run() {
try {
tratArquivo frame = new tratArquivo();
frame.setVisible(true);
} catch (Exception e) {
e.printStackTrace();
}
}
});
}
/**
* Create the frame.
*/
public tratArquivo() {
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setBounds(100, 100, 145, 104);
contentPane = new JPanel();
contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
setContentPane(contentPane);
contentPane.setLayout(null);
JButton btnNewButton = new JButton("Ação");
btnNewButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {
tratPipe trat = new tratPipe();
try {
trat.tratamentoArquivo();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
});
btnNewButton.setBounds(20, 21, 89, 23);
contentPane.add(btnNewButton);
}
}
[/code]
[code]import java.io.BufferedReader;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
import java.io.PrintWriter;
public class tratPipe {
public void tratamentoArquivo() throws IOException {
FileReader ler = new FileReader("C:\\Users\\danilo\\Desktop\\11042013_11_3986.csv");
BufferedReader leitor = new BufferedReader(ler);
String linha;
String linhaReescrita;
PrintWriter out = new PrintWriter("TESTE.txt");
while ((linha = leitor.readLine()) != null) {
linhaReescrita = linha.replaceAll("|", ",");
String[] linhas = linhaReescrita.split(",");
//linhaReescrita = linha.replaceAll(";00", ";");
out.println(linhas[1]);
}
out.close();
leitor.close();
}
}
[/code]