Fórum Renomear aquivo em massa #445521
14/06/2013
0
tenho um diretório com os seguintes arquivos
[vox]2.Broke.Girls.S01E01
[vox]2.Broke.Girls.S01E02
[vox]2.Broke.Girls.S01E03
[vox]2.Broke.Girls.S01E04
[vox]2.Broke.Girls.S01E05
[vox]2.Broke.Girls.S01E06
quero mudar para
2 Broke Girls S01E01
2 Broke Girls S01E02
2 Broke Girls S01E03
2 Broke Girls S01E04
2 Broke Girls S01E05
2 Broke Girls S01E06
ou seja quero trocar [b][vox]2.Broke.Girls[/b] para [b]2 Broke Girls[/b]

Fábio Cruz
Curtir tópico
+ 0Posts
17/06/2013
Fábio Cruz
Gostei + 0
17/06/2013
Charles Segundo
1 - Usar uma função pra pegar todos os arquivos do Diretório.
2 - Um While pra renomear todo mundo, alterando para o que você quer
> Se quiser usar variáveis, pra poder alterar os numeros na renomeação, exemplo 2 Broke Girls S[X]E[Y] ( pq ai ele renomeia 01,02,03,04 e etc...
3 - É bom tratar as strings que vai ler, para saber qual o episódio que vc ta renomeando ( exemplo. procure um numero 3, pra saber que é o episodio 3, e etc...)
Tudo depende de como você quer fazer... mas eu ainda acho mais simples renomear na mao... do que fazer um programa pra isso..
:)
Atenciosamente.
Gostei + 0
17/06/2013
Fábio Cruz
1 - Usar uma função pra pegar todos os arquivos do Diretório.
2 - Um While pra renomear todo mundo, alterando para o que você quer
> Se quiser usar variáveis, pra poder alterar os numeros na renomeação, exemplo 2 Broke Girls S[X]E[Y] ( pq ai ele renomeia 01,02,03,04 e etc...
3 - É bom tratar as strings que vai ler, para saber qual o episódio que vc ta renomeando ( exemplo. procure um numero 3, pra saber que é o episodio 3, e etc...)
Tudo depende de como você quer fazer... mas eu ainda acho mais simples renomear na mao... do que fazer um programa pra isso..
:)
Atenciosamente.
Realmente seria mais fácil fazer manualmente, mas vamos supor que eu tenha mais de 20 temporadas numa mesma pasta, como funcionaria?
Gostei + 0
17/06/2013
Charles Segundo
1 - Usar uma função pra pegar todos os arquivos do Diretório.
2 - Um While pra renomear todo mundo, alterando para o que você quer
> Se quiser usar variáveis, pra poder alterar os numeros na renomeação, exemplo 2 Broke Girls S[X]E[Y] ( pq ai ele renomeia 01,02,03,04 e etc...
3 - É bom tratar as strings que vai ler, para saber qual o episódio que vc ta renomeando ( exemplo. procure um numero 3, pra saber que é o episodio 3, e etc...)
Tudo depende de como você quer fazer... mas eu ainda acho mais simples renomear na mao... do que fazer um programa pra isso..
:)
Atenciosamente.
Realmente seria mais fácil fazer manualmente, mas vamos supor que eu tenha mais de 20 temporadas numa mesma pasta, como funcionaria?
Caso esteja todos os arquivos juntos. você deve procurar um padrão no nome, e verificar por padrão. exemplo.
G.O.T-S03E01.avi
G.O.T-S03E02.avi
G.O.T-S03E03.avi
no caso oq vc vai procurar é, a substring S03, ai vc saberá que é a temporada 3. vc pode também fazer com que a quantidade de temporadas seja variável, ou seja, vc insere quantas temporadas quer. e manda um while de 1 até QuantidadeTemporadas -1 , entendeu?!
Gostei + 0
17/06/2013
Diego Garcia
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | procedure TfrmPrincipal.RenomearArquivos; var SearchRec : TSearchRec; i : integer; sDir : string; sNome : string; begin sDir := '';//o diretório dos arquivos aqui i := FindFirst(sDir + '\[vox]*',0,SearchRec); while i = 0 do begin sNome := StringReplace(SearchRec.Name,'[vox]','',[]); sNome := StringReplace(sNome,'.',EmptyStr,[rfReplaceAll]); RenameFile(SearchRec.Name,sNome); i := FindNext(searchRec); end; end; |
Fiz de cabeça, sendo assim não testei e nem sei se compila =P
Da uma testada, qualquer coisa da um toque...
Essa função basicamente procura todos os arquivos no diretório especificado, que comecem com '[vox]', depois sai renomeando eles tirando o [vox] e os pontos.
Gostei + 0
18/06/2013
Fábio Cruz
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | procedure TfrmPrincipal.RenomearArquivos; var SearchRec : TSearchRec; i : integer; sDir : string; sNome : string; begin sDir := '';//o diretório dos arquivos aqui i := FindFirst(sDir + '\[vox]*',0,SearchRec); while i = 0 do begin sNome := StringReplace(SearchRec.Name,'[vox]','',[]); sNome := StringReplace(sNome,'.',EmptyStr,[rfReplaceAll]); RenameFile(SearchRec.Name,sNome); i := FindNext(searchRec); end; end; |
Fiz de cabeça, sendo assim não testei e nem sei se compila =P
Da uma testada, qualquer coisa da um toque...
Essa função basicamente procura todos os arquivos no diretório especificado, que comecem com '[vox]', depois sai renomeando eles tirando o [vox] e os pontos.
Interessante, mas ele não está efetivando na pasta as alterações
Gostei + 0
18/06/2013
Diego Garcia
1 | sDir := '';//o diretório dos arquivos aqui |
post aqui como ficou o seu código final.
Gostei + 0
18/06/2013
Fábio Cruz
Gostei + 0
18/06/2013
Diego Garcia
Gostei + 0
18/06/2013
Fábio Cruz
Já descobri o que era
1 | RenameFile(sDir + '/' + SearchRec.Name, sDir + '/' + sNome); |
Faltou informar a pasta origem e destino, no caso a mesma.
Gostei + 0
26/09/2013
José
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)