Dans mon application Java, je renomme les fichiers en un nom de fichier fourni dans un paramètre String. Il existe une méthodeJava - Comment savoir si un nom de fichier est valide?
boolean OKtoRename(String oldName, String newName)
qui vérifie essentiellement si le newName est pas déjà pris par un autre fichier, comme je ne voudrais pas enterrer ceux qui existent déjà.
Il m'est maintenant apparu que peut-être le nouveau nom Chaîne ne dénotera pas un nom de fichier valide. Donc je pensais que d'ajouter ce chèque à la méthode:
if (new File(newName).isFile()) {
return false;
}
Ce qui est évidemment pas la bonne façon de le faire, puisque dans la plupart des cas, le newFile n'existe pas encore et donc bien qu'il est OKtoRename, la La fonction renvoie false.
Je me demandais, est-il une méthode (je sais qu'il n'y a pas pour les objets java.io.File) comme canExist()
? Ou devrais-je utiliser regex pour m'assurer que la chaîne newFile ne contient pas de caractères invalides (par exemple?, *, ", :)? Je me demande s'il y a peut-être une fonction cachée quelque part dans le JDK pourrait éventuellement indiquer un nom de fichier valide.
s'il vous plaît, pas plus de réponses existe(), ce n'est pas utile. J'essaie de vérifier si un fichier pourrait exister. –
@MasterPeter: Essayez de reformuler votre question. Au début, il semble que vous voulez savoir si le fichier existe, alors que vous avez réellement besoin de savoir si le fichier NAME est valide. J'ai changé le titre, mais je n'ai pas touché à la formulation de la question. – OscarRyz
Cela semble pertinent: http://eng-przemelek.blogspot.com/2009/07/how-to-create-valid-file-name.html – greenoldman