Nel tuo codice c'è sicuramente un errore concettuale e una inefficienza:

L'errore concettuale risiede nel metodo getTextTo000():

codice:
private static String getTextTo000 (int count, int i){

   String name = "";
   if (i <= 9)
      name = "00" + i;
   else if (i > 9)
      name = "0" + i;
   else if (i > 99)
      name = "" + i;
   else 
      System.err.print("Errore calcolo del testo " + " *** " + i);
   return name + ".jpg";
}
La parte in grassetto non verrà mai eseguita, poichè se la variabile "i" è maggiore di 99 a maggior ragione sarà maggiore di "9", quindi viene intercettata nel caso precedente. Questo può dar luogo a valori come "0100", che presumibilmente non ti vanno bene (vorresti avere "100"). Da rivedere: inverti l'ordine dei confronti.

Poi c'è un'inefficienza nel main:

codice:
String files[] = getLlistFile(PATH_ANIME_FOLDER);

printStringArray(files);

File[] f = getListFile(PATH_ANIME_FOLDER);
saveFile(f, PATH_FOLDER);
Perchè ottenere nuovamente lo stesso identico array? Ce l'hai già, si chiama "files", usa quello.

Per il resto non ho controllato, ma verifica che la directory esista, prima di effettuare la rinomina.

@valia: "direttorio" proprio non lo posso sentire...

Ciao.