Renomear Vários Arquivos Dentro de Uma Pasta
17/10/2018
0
Boa noite!!!
Tenho um dbgrid aonde eu filtro algumas vendas por data, e no outro dbgrid eu listo umas imagens que estão dentro de uma pasta, o que eu preciso.Renomear essas imagens que estão dentro da pasta para o código da venda(V_ID), eu fiz, mas renomeia só a primeira imagens as outras não.Como posso resolver.
Imagem dos Dbgrids Para Melhor Entendimento
https://uploaddeimagens.com.br/imagens/renomear-jpg
Código do Botão Para Renomear
Tenho um dbgrid aonde eu filtro algumas vendas por data, e no outro dbgrid eu listo umas imagens que estão dentro de uma pasta, o que eu preciso.Renomear essas imagens que estão dentro da pasta para o código da venda(V_ID), eu fiz, mas renomeia só a primeira imagens as outras não.Como posso resolver.
Imagem dos Dbgrids Para Melhor Entendimento
https://uploaddeimagens.com.br/imagens/renomear-jpg
Código do Botão Para Renomear
procedure TForm1.Button4Click(Sender: TObject); var I : Integer; NomeOld, NomeNew, Ext : string; begin ClientDataSet1.First; while not ClientDataSet1.Eof do begin NomeOld := ClientDataSet1.FieldByName(''IMAGEM'').AsString;//Lê o Antigo Nome Ext := ExtractFileExt(NomeOld); //Extrai a Extenção NomeNew := ExtractFilePath(NomeOld); //Extrai o local do arquivo NomeNew := NomeNew + ClientDataSet2.FieldByName(''V_ID'').AsString + ''.jpg'';//Monta o Novo Nome RenameFile(NomeOld,NomeNew); ClientDataSet1.Next; end; end;
Bruno Henrique
Curtir tópico
+ 1
Responder
Post mais votado
18/10/2018
Creio que você precisa percorrer o ClientDataSet2 também além do ClientDataSet1 para montar o novo nome:
Teste:
Teste:
procedure TForm1.Button4Click(Sender: TObject); var I : Integer; NomeOld, NomeNew, Ext : string; begin ClientDataSet1.First; ClientDataSet2.First; // Acrescentei esta linha while not ClientDataSet1.Eof do begin NomeOld := ClientDataSet1.FieldByName(''IMAGEM'').AsString;//Lê o Antigo Nome Ext := ExtractFileExt(NomeOld); //Extrai a Extenção NomeNew := ExtractFilePath(NomeOld); //Extrai o local do arquivo NomeNew := NomeNew + ClientDataSet2.FieldByName(''V_ID'').AsString + ''.jpg'';//Monta o Novo Nome RenameFile(NomeOld,NomeNew); ClientDataSet1.Next; ClientDataSet2.Next; // Acrescentei esta linha end; end;
Natanael Ferreira
Responder
Mais Posts
Clique aqui para fazer login e interagir na Comunidade :)