Carregar arquivo .txt em um JTable

4 respostas
Z

Opa galera,!
Beleza?! faz um bom tempo né =)

Seguinte, tenho um arquivo .txt e cada palavra é separada por virgula (7 colunas)

public	String[] coluna	={"Nome","Idade","CPF","RG","Telefone","Endereco","Cidade","Estado"};

Estou carregando o arquivo txt com o seguinte conteudo: Teste, 18, 888888, 666666, 222222, AAAA, BBBBB, SC

e quero joga-lo na tabela. segue o método que estou fazendo:

public
	void			ArquivoCarregar()
	{
		try
		{	
			ih_recebe_buffer = RLerArquivo.FileToByte("Deposito.txt");
			
			is_buffer = new String(ih_recebe_buffer);
						
			//
			// Recebe a mensagem e encontra os @.
			//
			String 
		        ls_arquivo[]		=	is_buffer.split(",");
						
			//
			// Percorre toda a linha.
			//
			for	(
					int
					ln		=	0
					;
					ln		<	ls_arquivo.length
					;
					ln++
				)
			{
				//
				// Inicializa o vetor.
				//
				io_vt_auxiliar	=	new Vector();
				io_vt_auxiliar.add(ls_arquivo[ln]);
				io_vt_principal.add(io_vt_auxiliar);
			}
		
			lo_vt_transacao_collum.add(coluna[0].toString());
			lo_vt_transacao_collum.add(coluna[1].toString());
			lo_vt_transacao_collum.add(coluna[2].toString());
			lo_vt_transacao_collum.add(coluna[3].toString());
			lo_vt_transacao_collum.add(coluna[4].toString());
			lo_vt_transacao_collum.add(coluna[5].toString());
			lo_vt_transacao_collum.add(coluna[6].toString());
			lo_vt_transacao_collum.add(coluna[7].toString());
			
			modelo.setDataVector(io_vt_principal,lo_vt_transacao_collum);
			io_tb_tabela.setModel(modelo);
		}
		catch (IOException e)
		{
			e.printStackTrace();
		}
		catch (Exception e) 
		{
			e.printStackTrace();
		}
	}

o problema é que ele adiciona tudo em 1 coluna só.. =(

Alguem poderia me ajudar?

4 Respostas

Z

Galera,
com um pouco + de esforço, resolvi dessa maneira:

public
	void			ArquivoCarregar()
	{
		try
		{	
			ih_recebe_buffer = RLerArquivo.FileToByte("Deposito.txt");

			is_buffer = new String(ih_recebe_buffer);

			if	(!is_buffer.isEmpty())
			{
				String
				ls_arquivo_enter[]	=	is_buffer.split("\r\n");

				//
				// Recebe a mensagem e encontra os ,
				//
				String
				ls_arquivo[][]		=	new String[ls_arquivo_enter.length][];

				for	(
						int
						ln		=	0
						;
						ln		<	ls_arquivo_enter.length
						;
						ln++
				)
				{
					ls_arquivo[ln]		=	ls_arquivo_enter[ln].split(",");
				}

				//
				// Percorre toda a linha.
				//
				for	(
						int
						l		=	0
						;
						l		<	ls_arquivo.length
						;
						l++
				)
				{
					//
					// Inicializa o vetor.
					//
					io_vt_auxiliar	=	new Vector();

					for	(
							int
							c		=	0
							;
							c		<	ls_arquivo[l].length
							;
							c++
					)
					{	
						io_vt_auxiliar.add(ls_arquivo[l][c]);
					}

					io_vt_principal.add(io_vt_auxiliar);
				}

				lo_vt_transacao_collum.add(coluna[0]);
				lo_vt_transacao_collum.add(coluna[1]);
				lo_vt_transacao_collum.add(coluna[2]);
				lo_vt_transacao_collum.add(coluna[3]);
				lo_vt_transacao_collum.add(coluna[4]);
				lo_vt_transacao_collum.add(coluna[5]);
				lo_vt_transacao_collum.add(coluna[6]);
				lo_vt_transacao_collum.add(coluna[7]);

				modelo.setDataVector(io_vt_principal,lo_vt_transacao_collum);
			}
		}
		catch (IOException e)
		{
			// e.printStackTrace();
		}
		catch (Exception e)
		{
			// e.printStackTrace();
		}
Marky.Vasconcelos

Só por curiosidade… voce escreve seu código assim mesmo?

Achei meio complicado de entender na primeira olhada.

Por exemplo:

for (   
                            int   
                            c       =   0   
                            ;   
                            c       <    ls_arquivo[l].length   
                            ;   
                            c++   
                    )   
                    {

Seria mais fáçil entender se fosse assim:

for (int c = 0; c < ls_arquivo[l].length; c++)
{
Z

Na verdade, eu apertei um botão aqui no meu eclipse (acho que foi ctrl + alguma coisa) e ficou assim! e quando colei aqui piorou mais ainda!

Abraços!

Marky.Vasconcelos

Aperta Ctrl + Shif+ F no eclipse que ele formata no padrão

Criado 24 de novembro de 2008
Ultima resposta 25 de nov. de 2008
Respostas 4
Participantes 2