Estou com dificuldades para ler arquivos em TXT e passar os dados Lidos para uma JTable para trabalhar com esses dados. o que eu to querendo importar é um relatorio, ele é tabulado em colunas, queria então passar cada coluna do txt para uma coluna da Table, mas até agora só consigo ler o arquivo todo, nao sei como fazer para ler somente parte de uma linha(coluna).
private void readFile() {
BufferedReader d;
StringBuffer sb = new StringBuffer();
try {
d = new BufferedReader(new FileReader(“c:/temp/533.txt”));
String line;
while ((line = d.readLine()) != null)
sb.append(line + “\n”);
System.out.println(sb.toString());
d.close();
} catch (FileNotFoundException fe) {
System.out.println("Arquivo não encontrado");
} catch (IOException ioe) {
}
}
Faz assim:
String linha=d.readLine();
String colunas[]=linha.split(",");//o parâmetro é o caracter que vc usou para separar as colunas
- Crie uma classe de negócios que represente os objetos que estão descritos em cada linha do arquivo.
- Use a classe Scanner para ler dados de arquivos, e o método split para separar as colunas.
- Crie um TableModel que exiba os dados usando a sua classe de negócio. Não use o DefaultTableModel;
- Crie a tela com sua tabela, associada ao seu tablemodel.
Vamos supor que seu arquivo seja de Livros, e tenha na primeira coluna o id do livro, na segunda o nome do livro e na terceira o nome do autor. Você poderia criar uma classe de negócios assim:
[code]public class Livro {
private int codigo;
private String nome;
private String autor;
public Livro (int codigo, String nome, String autor) {
this.codigo = codigo;
this.nome = nome;
this.autor = autor;
}
public String getNome() {
return nome;
}
public int getCodigo() {
return codigo;
}
public String getAutor() {
return autor;
}
}[/code]
O método de leitura de um arquivo separado por vírgulas, contendo essas colunas, ficaria mais ou menos assim:
public List<Livro> lerLivros(File arquivo) {
Scanner scan = null;
try {
scan = new Scanner(arquivo);
List<Livro> livros = new ArrayList<Livro>();
while (scan.hasNextLine()) {
//Lê a linha com o nextLine e a divide em colunas com o split
String campos = scan.nextLine().split(",");
livros.add(new Livro(
Integer.parseInt(campos[0]),
campos[1], campos[2]));
}
catch (Exception e) {
throw new RuntimeException("Impossível ler arquivo.", e);
} finally {
scan.close();
}
}
O seu TableModel, ficaria muito parecido com esse aqui:
http://www.guj.com.br/posts/list/132698.java#714736
Depois, é só montar a tela. 
Valeu as dicas pessoal, vou testar e qualquer duvida a mais que eu não consima mesmo resolver posto aqui novamente…valeu…
Olá Pessoal Novamente solicito ajuda, testei as opções que me foram passadas até funcionaram mas não para esse arquivo que eu preciso ler, problema tá na manipulação do txt para colunas porque o meu delimitador de colunas é " "(espaço vazio) e isso ocorre no meio do nome e acaba separando nome também, não existe alguma forma de ler por delimitando a quantidade de colunas. exemplo da da posição 0 até 8 coluna1 da posição 10 até 21 coluna2 e assim suscessivamente. Em anexo um pequeno exemplo de parte do arquivo que eu tenho que ler e importar para as acolunas.
Mais um questionamento, será que estou fazendo da forma mais correta?? Alguem sabe me dizer se seria mais facil fazer essa importação para as tabelas de um banco de dados e trabalhar com a Table a partir dai???