geovanelopes Postado Setembro 27, 2005 Denunciar Share Postado Setembro 27, 2005 Tenho um arquivo txt com os seguintes dados:TX_PATH_CON 800200000 12.06TX_PATH_CON 802000200 12.02TX_PATH_CON 824000000 12.07TX_PATH_CON 806000000 12.08TX_PATH_CON 808000000 12.07TX_PATH_CON 810000000 12.06Fiz uma procedure para colocar esses dados (do mesmo jeito) em um stringGrid.Sendo que está pegando a linha inteira e colocando em uma cell. Alguém pode me ajudar a colocar essa informações no grid corretament.O script abaixo:procedure TForm1.BitBtn1Click(Sender: TObject);varf: Textfile;x,y: integer;tempstr: string;begin OpenDialog1.Filter := 'Configuração do arquivo (*.TBL)|*.TBL'; OpenDialog1.InitialDir := 'C:\'; OpenDialog1.Title :='Abrir Minha Aplicação'; if OpenDialog1.Execute then begin assignfile (f,OpenDialog1.FileName); reset (f); //readln (f,temp); grid.colcount := 3; //readln (f,temp); grid.rowcount := 100; For X := 0 to grid.colcount-1 do begin For y := 0 to grid.rowcount-1 do begin readln (F, tempstr); grid.cells[x,y]:=tempstr; end; end; closefile (f); end;end;Obrigado, Geovane Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Ricardo_PF Postado Setembro 27, 2005 Denunciar Share Postado Setembro 27, 2005 Daew Geovane... cara t aconselho a fazer um laço for para pegar todas as linhas do arquivo e em cada linha q você pegar você coloca o valor na coluna correspondente, assim: for LINHA to QUANTIDADE DE LINHAS DO ARQUIVO do begin grid.cells[COLUNA, linha] := copy(VALOR DA LINHA); //repete a linha de cima a quantidade de colunas end; Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 geovanelopes Postado Setembro 28, 2005 Autor Denunciar Share Postado Setembro 28, 2005 Valeu!Resolvi da seguinte forma:procedure TForm1.BitBtn1Click(Sender: TObject);varf: Textfile;x,y: integer;tempstr: string;begin OpenDialog1.Filter := 'Configuração do arquivo (*.TBL)|*.TBL'; OpenDialog1.InitialDir := 'C:\'; OpenDialog1.Title :='Abrir Minha Aplicação';if OpenDialog1.Execute then begin assignfile (f,OpenDialog1.FileName); reset (f); while (not eof(f))do begin readln(f,tempstr); Memo1.Lines.Add(tempstr); end; CloseFile(f); end; grid.colcount := 3; grid.rowcount := 56; Y := 185; for x := 0 to 12 do begin grid.cells[0,x] := copy(memo1.lines[y], 1, 15); y := y + 1; end; Y := 185; for x := 0 to 12 do begin grid.cells[1,x] := copy(memo1.lines[y], 18, 9); y := y +1; end; Y := 185; for x := 0 to 12 do begin grid.cells[2,x] := copy(memo1.lines[y], 28, 5); y := y +1; end; Y := 198; for x := 13 to 27 do begin grid.cells[0,x] := copy(memo1.lines[y], 1, 15); y := y + 1; end; Y := 198; for x := 13 to 27 do begin grid.cells[1,x] := copy(memo1.lines[y], 18, 10); y := y +1; end; Y := 198; for x := 13 to 27 do begin grid.cells[2,x] := copy(memo1.lines[y], 29, 5); y := y +1; end; Y := 213; for x := 28 to 40 do begin grid.cells[0,x] := copy(memo1.lines[y], 1, 15); y := y + 1; end; Y := 213; for x := 28 to 40 do begin grid.cells[1,x] := copy(memo1.lines[y], 18, 9); y := y +1; end; Y := 213; for x := 28 to 40 do begin grid.cells[2,x] := copy(memo1.lines[y], 28, 5); y := y +1; end; Y := 226; for x := 41 to 55 do begin grid.cells[0,x] := copy(memo1.lines[y], 1, 15); y := y + 1; end; Y := 226; for x := 41 to 55 do begin grid.cells[1,x] := copy(memo1.lines[y], 18, 9); y := y +1; end; Y := 226; for x := 41 to 55 do begin grid.cells[2,x] := copy(memo1.lines[y], 29, 5); y := y +1; end; end; Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Ricardo_PF Postado Setembro 28, 2005 Denunciar Share Postado Setembro 28, 2005 se você usou um memo para abrir o arquivo há uma forma mais fácil de trazer o conteúdo do arquivo para dentro do memo: memo1.lines.loadfromfile("CAMINHO E NOME DO ARQUIVO");e caso keira salvar o conteudo: memo1.lines.savetofile("CAMINHO E NOME DO ARQUIVO");Mas é claro, tem que ser um arquivo com conteúdo texto, para usar esses dois procedimentos você não pode estar tentando ler ou salvar em um arquivo binário, por exemplo.Vlw,Ricardo. Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
geovanelopes
Tenho um arquivo txt com os seguintes dados:
TX_PATH_CON 800200000 12.06
TX_PATH_CON 802000200 12.02
TX_PATH_CON 824000000 12.07
TX_PATH_CON 806000000 12.08
TX_PATH_CON 808000000 12.07
TX_PATH_CON 810000000 12.06
Fiz uma procedure para colocar esses dados (do mesmo jeito) em um stringGrid.
Sendo que está pegando a linha inteira e colocando em uma cell.
Alguém pode me ajudar a colocar essa informações no grid corretament.
O script abaixo:
procedure TForm1.BitBtn1Click(Sender: TObject);
var
f: Textfile;
x,y: integer;
tempstr: string;
begin
OpenDialog1.Filter := 'Configuração do arquivo (*.TBL)|*.TBL';
OpenDialog1.InitialDir := 'C:\';
OpenDialog1.Title :='Abrir Minha Aplicação';
if OpenDialog1.Execute then
begin
assignfile (f,OpenDialog1.FileName);
reset (f);
//readln (f,temp);
grid.colcount := 3;
//readln (f,temp);
grid.rowcount := 100;
For X := 0 to grid.colcount-1 do
begin
For y := 0 to grid.rowcount-1 do
begin
readln (F, tempstr);
grid.cells[x,y]:=tempstr;
end;
end;
closefile (f);
end;
end;
Obrigado, Geovane
Link para o comentário
Compartilhar em outros sites
3 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.