Fórum Dados de arquivo txt para Grid em delphi #532567
23/09/2015
0
mat
Andre e Ana
h
Danilo
h
Lucas Guilherme
m
Vilma
m
Leticia
mat
Jonathan e Prisclilla
aonde o mat significa matrimonio, h = Homem e m= Mulher
aonde na coluna fica o nome e na outra coluna o tipo (Mat / H / M )
alguém poderia ajudar a coletar estas informações?
Geferson Piekarz
Curtir tópico
+ 0Posts
23/09/2015
Misterzire
Gostei + 0
23/09/2015
Geferson Piekarz
Gostei + 0
23/09/2015
Raimundo Pereira
depois é só linkar o dbgrid ao datasource.
Gostei + 0
23/09/2015
Geferson Piekarz
mat
Andre e Ana
h
Danilo
h
Lucas Guilherme
m
Vilma
m
Leticia
mat
Jonathan e Prisclilla
aonde o mat significa matrimonio, h = Homem e m= Mulher
aonde no campo da coluna nome se relaciona com a palavra mat de matrimonio do arquivo texto;
No ClientDataSet criei as colunas NOME,GRUPO
exemplo:
h
Lucas guilherme
o h esta primeiro depois o nome da pessoa, conforme esta no texto do arquivo
aonde no grid ficaria
coluna nome : Lucas guilherme
coluna grupo:h
Fico no aguardo...
Gostei + 0
23/09/2015
Raimundo Pereira
A ideia é que eu tenha dois arquivos separados por Grupo :
Grupo :M
Grupo :H
Ambos salvos separadamente.
Criei uma rotina que realiza a leitura e importa os registros . segue o código abaixo:
//VARIAVÉIS USADAS
VAR
TMP : TClientDataSet;
TMP_DS:TDataSource;
REGISTRO: string;
GRUPO_ARQ:STRING;
Posicao : integer;
ARQUIVO: TListBox;
//----------------------------------------------------------
implementation
{$R *.dfm}
//PROCEDIMENTO DE ISERT PARA O CLIENTDATASET
PROCEDURE Adicionar_registro();
BEGIN
REGISTRO:=( ARQUIVO.Items.Strings[Posicao]);
TMP.Insert;
TMP.FieldByName('NOME').AsString:=REGISTRO;
TMP.FieldByName('GRUPO').AsString:=GRUPO_ARQ;
TMP.post;
END;
Coloquei apenas um button 'Importar' e um dbgrid no form.
Segue o código do button
//--
begin
// CRIAÇÃO DO CLIENTE DATASET
TMP := TClientDataSet.Create(nil);
TMP.Close;
TMP.FieldDefs.Clear;
TMP.FieldDefs.add('GRUPO',ftString,1);
TMP.FieldDefs.add('NOME',ftString,30);
TMP.CreateDataSet;
// CRIAÇÃO DO DATASOURCE LINKADO AO CLIENTE DATASET
TMP_DS := TDataSource.Create(nil);
TMP_DS.DataSet := TMP;
// LINK DO DBGRID AO DATASOURCE
DBGrid1.DataSource:=TMP_DS;
// LENDO E IMPORTANDO DADOS DOS ARQUIVOS TXT
TMP.Active:=TRUE;
// IMPORTANDO ARQUIVO DE GRUPO H
//-------------------------------------------------------------
GRUPO_ARQ:='H';
ARQUIVO:=TListBox.CreateParented(Self.Handle);
ARQUIVO.Visible:=false;
ARQUIVO.Items.LoadFromFile('c:\'+GRUPO_ARQ);
for Posicao:=0 to ARQUIVO.Items.Count-1 do
Adicionar_registro; //ADICIONA LINHA DO ARQUIVO TXT AO CLIENTEDATASET
ARQUIVO.Free;
//-------------------------------------------------------------
// IMPORTANDO ARQUIVO DE GRUPO M
//-------------------------------------------------------------
begin
GRUPO_ARQ:='M';
ARQUIVO:=TListBox.CreateParented(Self.Handle);
ARQUIVO.Visible:=false;
ARQUIVO.Items.LoadFromFile('c:\'+GRUPO_ARQ);
for Posicao:=0 to ARQUIVO.Items.Count-1 do
Adicionar_registro; //ADICIONA LINHA DO ARQUIVO TXT AO CLIENTEDATASET
ARQUIVO.Free;
end;
//-------------------------------------------------------------
ShowMessage('Importação Finalizada');
end;
Resultado detalhado na IMG abaixp [img]http://arquivo.devmedia.com.br/forum/imagem/437747-20150923-172414.png[/img]
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)