Eu baixei muitos vídeos online antes. Depois de descomprimi -los, descobri que havia uma longa lista de URLs na frente de cada arquivo, o que me deixou incapaz de ver claramente qual era o nome de cada vídeo.
Eu procurei alguns métodos de renomeação de lote on -line, mas nenhum deles era o que eu queria. Como é esse o caso, eu apenas escrevia um em Java sozinho. Eu testei e deve ficar bem, e vou compartilhar agora.
Primeiro, envie o código:
importar java.io.file; importar java.util.hashmap; importar java.util.map; importar java.util.map.entry;/*** renomear classe*@author jack*/class! getMap () {Return map;} // Adicione nova regra de substituição (substituição da string) public replacementChain Addregulação (string Oldstr, string newstr) {this.map.put (Oldstr, newstr); retorna this;}}/*** rename classe*@author jack*/public class Renome caminho, substituição de substituição) {arquivo de arquivo = novo arquivo (caminho); boolean isdirectory = file.isdirectory ();/** se não for uma pasta, return * */if (! isdirectory) {system.out.println (path + "não uma pasta!"); OldFileName = ""; // Nome anterior/** Faça um loop através de todos os arquivos**/for (string fileName: arquivos) {OldFilename = FileName; map <string, string> map = replactoringCain.getMap (); para (entrada <string, string> entrada: map.entryset ()) {filename = filename.replace () (string.getkey.Estry.Estry.TerySet ()) {filename = filename.replace () () () (string) (string) (string) (string) (fIlt) (fIlT) (); OldFilename); // O endereço de saída é consistente com o caminho original f.renameto (novo arquivo (caminho + "//" + nome do arquivo));} System.out.println ("Parabéns, a renomeação do lote foi bem -sucedida!");} Public static void main (string [] args) {}}}}}}}}}}Como usar:
Se agora eu tiver uma pasta com vários arquivos TXT dentro, tudo com um prefixo e sufixo muito longos.
Agora eu quero remover todos os seus prefixos;
A primeira etapa é criar uma nova instância da classe SubstacementChain no método principal, que é uma classe de regra. O principal é definir algumas regras de substituição.
Substituição SubstacementChain = new SubstacementChain ();
Etapa 2: adicione novas regras de substituição
O nome completo do primeiro arquivo:
[Eu sou um prefixo muito longo] ~~~~ 001 (eu sou Mengmeng Little Tail) .txt
Esperamos remover [eu sou um prefixo muito longo] ~~~~ e (eu sou a cauda Little de Mengmeng) e apenas adicionar duas regras de substituição ao replacechain.
substituição cenário.Adddregulação ("【Eu sou um prefixo muito longo】 ~~~~~", "") .Adddregulação ("(eu sou a cauda de Mengmeng)" ");
O ADDEGULATION suporta chamadas de cadeia.
Etapa 3: ligue para o método de renomeação de lote
Renome.multirename ("f: // pasta de teste", substituição);
Passe dois parâmetros. O primeiro é o caminho da pasta em que o arquivo que precisa ser processado em lotes e o segundo é o objeto SubstacementChain.
correr
Se o console estiver impresso: Parabéns, a renomeação do lote será bem -sucedida!
Então significa sucesso.
Esses arquivos que eu foram renomeados localmente em lotes:
O exposto acima é que a renomeação do lote de arquivo java e o teste pessoal disponível (versão Lite) introduzida pelo editor. Espero que seja útil para todos. Se você tiver alguma dúvida, deixe -me uma mensagem e o editor responderá a todos a tempo. Muito obrigado pelo seu apoio ao site wulin.com!