1. Crie uma classe de negócios que represente os objetos que estão descritos em cada linha do arquivo.
2. Use a classe Scanner para ler dados de arquivos, e o método split para separar as colunas.
3. Crie um TableModel que exiba os dados usando a sua classe de negócio. Não use o DefaultTableModel;
4. 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:
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;
}
}
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. ;)