inserir dados em um txt

07/04/2006

caros amigos

tenho um programinha que tem edit1.txt e campo data
no edit ele vai ler um cod. de barra com codigo de funcionario
ate ai ok.. so que apos a leitura eu preciso que o programa adiciona uma linha com o codigo do funcionario, horario em um arquivo.txt
ficaria assim

0000050149060320075447040102


o programa não precisa gravar em banco de dados so no txt
desde já agradeço....


Emerson1

Respostas

07/04/2006

Paullsoftware

essa rotina cria um txt
 try
  AssignFile(Arq,xNomeArquivo);
  Rewrite(Arq);//Regrava o arquivo
  WriteLn(Arq,´Dados a Ser Gravado´);//Acrescenta uma linha
  WriteLn(Arq,´Outra Linha´);//Acrescenta outra linha
...
Finally
CloseFile(Arq);
end;
...


espero ter ajudado :wink:


Responder Citar

07/04/2006

Emerson1

0000050149060320075447040102


no campos de 1 a 10 eo codigo, 11 a 16 a data, 17 a 22 a hora, 23a24 n loja, 25 a 26 ´01´, 27a28 ´02´


o campo codigo tem que ser adicionado 0 para completar o campo


Responder Citar

07/04/2006

Paullsoftware

certo amigo, pelo que entendi, vc vai juntar e jogar no txt...
então qual o problema?
var
Dados:String;
...

Dados := IntToStr(0000050149060320075447040102);
 WriteLn(Arq,Dados);



Responder Citar

07/04/2006

Osocram

certo amigo, pelo que entendi, vc vai juntar e jogar no txt... então qual o problema?
var
Dados:String;
...

Dados := IntToStr(0000050149060320075447040102);
 WriteLn(Arq,Dados);


Esse numero ae estoura o Integer, non>????

E Respondendo ao Emerson... eh so concatenar a string e e escrever no arquivo como o PaullSoft disse...

mas jogue direto como string.


Responder Citar

07/04/2006

Emerson1

deixa eu explicar denovo tenho um formulario(programa)
com um edit.txt e
DateTimePicker1.Date + BitBtn

quando clicar no BitBtn o programa vai adicionar uma linha no arquivo txt como Layout que passei

0000050149060320075447040102


no campos de 1 a 10 eo codigo, 11 a 16 a data, 17 a 22 a hora, 23a24 n loja, 25 a 26 ´01´, 27a28 ´02´
****

so que eu não sei como fazer para quando clicar no BitBtn o programa faça isso...

desculpe se não fui claro, pois estou começando agora no delphi


Responder Citar

08/04/2006

Rjun

Basta você colocar o código que os amigos acima postaram no evento OnClick do seu botão.


Responder Citar

10/04/2006

Paullsoftware

[quote:e7a1e56e21=´paullsoftware´]certo amigo, pelo que entendi, vc vai juntar e jogar no txt... então qual o problema?
var
Dados:String;
...

Dados := IntToStr(0000050149060320075447040102);
 WriteLn(Arq,Dados);


Esse numero ae estoura o Integer, non>????

E Respondendo ao Emerson... eh so concatenar a string e e escrever no arquivo como o PaullSoft disse...

mas jogue direto como string.[/quote:e7a1e56e21]
coloca como String então...


Responder Citar

10/04/2006

Emerson1

paullsoftware
muito obrigado deu certo fiço assim

***
var
arq : TextFile;
hora: String;
begin
hora := Edit1.Text + FormatDateTime(´yyMMdd´,DateTimePicker1.Date);

try
AssignFile(Arq, ´C:\hora.txt´);
Rewrite(Arq);//Regrava o arquivo(((((aqui ele está apagando))))
Writeln(Arq,hora);//Acrescenta uma linha(((((gravar sempre na ultima linha)))))
WriteLn(Arq,´´);//Acrescenta outra linha

Finally
CloseFile(Arq);
end;

****

agora como eu faço para que ele não apage o anterio que foi gravado
para ele gravar sempre na ultima linha

desde ja agradeco....


Responder Citar

11/04/2006

Aroldo Zanela

Colega,

Siga o exemplo:

var Registro: string;
    Arquivo: TextFile;
    NomeArquivo: string;
begin
  NomeArquivo   := ´c:\arquivo.txt´;
  AssignFile(Arquivo, NomeArquivo);
  if FileExists(NomeArquivo) then
    Append(Arquivo)
  else
    Rewrite(Arquivo);

  // no campos de
  // 1 a 10 eo codigo,
  // 11 a 16 a data,
  // 17 a 22 a hora,
  // 23 a 24 n loja,
  // 25 a 26 ´01´,
  // 27 a 28 ´02´

  Registro := FormatFloat(´0000000000´, StrToInt(edt1.Text)) +
              FormatDateTime(´ddmmyy´, Date) +
              FormatDateTime(´hhMMss´, Time) +
              FormatFloat(´00´, 1) + // Loja 1
              ´01020´; // Filler
  Writeln(Arquivo, Registro);

  CloseFile(Arquivo);
end;



Responder Citar

11/04/2006

Emerson1

Aroldo Zanela
valeu cara

erra tudo que eu precisava ,,,muito obrigado ...mesmo

so o ouro!!!!!!!!!!!!!


Responder Citar