J'ai le code suivant:
List<FileItem> items = uploadHandler.parseRequest(request);
for (FileItem item : items) {
if (!item.isFormField()) {
File file = new File("D:/Data");
}
}
Lorsque j'essaye de sauvegarder un fichier, j'obtiens l'erreur suivante
Java.io.FileNotFoundException: D:\Data (Access is denied.)
Quelle pourrait être la raison et comment puis-je résoudre ce problème? J'ai lu et écrit l'autorisation sur ce dossier.
Lorsque vous créez un nouveau File
, vous êtes censé fournir le nom du fichier, pas uniquement le répertoire dans lequel vous souhaitez placer votre fichier.
Essayez avec quelque chose comme
File file = new File("D:/Data/" + item.getFileName());
Pas exactement le cas de cette question mais peut être utile. J'ai eu cette exception quand j'appelle mkdirs () sur un nouveau fichier au lieu de son parent
File file = new Java.io.File(path);
//file.mkdirs(); // wrong!
file.getParentFile().mkdirs(); // correct!
if (!file.exists()) {
file.createNewFile();
}
J'ai cherché ce problème et j'ai obtenu les réponses suivantes:
"C:\Program Files\Apache-Tomcat-7.0.69\"
supprime la barre oblique inverse supplémentaire (\
)Votre problème sera résolu
Vous devez définir une autorisation pour les contrôles utilisateur.
Assurez-vous que le répertoire existe, vous avez la permission d'y accéder et ajoutez le fichier au chemin pour écrire le journal:
File file = new File("D:/Data/" + item.getFileName());