Mudar Extensao de Varios Arquivos...

Delphi

05/01/2004

Depois de Tanto Tentar, eu Me Rendo !!! :o

Seguinte:

Tenho Uma Pasta Minha Com Varios Arquivos Com Extenão Ex. teste1.txt, Teste2.txt etc...

Quero Mudar apenas a extensão dos arquivos ao mesmo tempo Ex. Teste1.doc, Teste2.doc Etc..

Obs: Mudar de .txt para .doc

[]


Alves

Alves

Curtidas 0

Respostas

Wolverine

Wolverine

05/01/2004

Amigo eu ñ sei mudar mais isso pode lhe ajudar:

{ - Coloque um Button no Form;

- Altere o evento OnClick do Button conforme abaixo: }

procedure TForm1.Button2Click(Sender: TObject);
var
SR: TSearchRec;
I: integer;
begin
I := FindFirst(´c:\Teste\*.*´, faAnyFile, SR);
while I = 0 do begin
if (SR.Attr and faDirectory) <> faDirectory then
if not DeleteFile(´c:\Teste\´ + SR.Name) then
ShowMessage(´Não consegui excluir c:\Teste\´ + SR.Name);
I := FindNext(SR);
end;
end;
Observações

No exemplo acima todos os arquivos do diretório c:\Teste serão excluídos. CUIDADO! Arquivos excluídos desta forma não vão para a lixeira.

vc agora deve alterar o delete pelo alterar,

espero ter dado um luz
Qquer coisa estou ai


GOSTEI 0
Barcelos

Barcelos

05/01/2004

Olá amigo,

Para alterar a extensão de um arquivo você deve usar a função ChangeFileExt. A declaração da função é:
ChangeFileExt(const FileName, Extension: string): string;
O primeiro parâmetro é o nome do arquivo e o segundo a nova extensão.

Espero ter ajudado,

Barcelos
osbarcelos@hotmail.com


GOSTEI 0
Alves

Alves

05/01/2004

Obrigado a vcs que responderam, mas fico a resposta do colega Barcelos.
A Resposta do Volverine ja conheço e uso para contar os arquivos na pasta.

Obrigado a Voces...

Vou testar e ver se funciona.

[]


GOSTEI 0
Alves

Alves

05/01/2004

Ainda não estou conseguindo fazer mudar a extensão dos arquivos
alguem mais mais sugestoes ??


GOSTEI 0
Cebikyn

Cebikyn

05/01/2004

Use:

var
  Arquivo: String; // variável contendo o nome do arquivo .txt
begin
  // Salva o arquivo como .doc
  CopyFile(PChar(Arquivo), PChar(ChangeFileExt(Arquivo,´.doc´)),false);
  // Deleta o original (.txt), pois não é mais necessário
  DeleteFile(Arquivo);
end;


Adapte ao código do Wolverine para mudar todos os arquivos de uma pasta.


GOSTEI 0
Fabio.hc

Fabio.hc

05/01/2004

Tente assim:

RenameFile(´arquivo.txt´,´arquivo.doc´);



GOSTEI 0
Alves

Alves

05/01/2004

Agora sim consegui fazer funcionar... com a ajuda de todos

O código ficou parecido com este

procedure TTela_Cripto.Timer1Timer(Sender: TObject); var I: integer; Origem: String; begin I := FindFirst(´c:\\pasta\*.txt´, faAnyFile, SR); while I = 0 do Begin if (SR.Attr and faDirectory) <> faDirectory then begin inc(Conta); Origem := ´c:\pasta\´ + SR.Name; CopyFile(PChar(Origem), PChar(ChangeFileExt(Origem,´.doc´)),false); DeleteFile(Origem); Sleep(100); Form1.StatusBar1.Caption := ´Renomeando o Arquivo ´ + IntToStr(I) + Origem; Form1.StatusBar1.Refresh; end; I := FindNext(SR); end; end;
[/i]


GOSTEI 0
POSTAR