télécharger le fichier en JSP - comment modifier un chemin d'accès par défaut pour le fichier téléchargé
J'ai deux jps pages pour gérer l'upload de fichier.
Voici un code permettant de sélectionner un fichier:
org.apache.commons.io.FilenameUtils, java.util.*,
java.io.File, java.lang.Exception" %>
...
<form name="uploadFile" method="POST" action="processUpload.jsp"
enctype="multipart/form-data">
<input type="file" name="myfile"><br />
<input type="submit" value="Submit" />
</form>
....
//--------gérer le fichier téléchargé---------------------
<%@ page contentType="text/html;charset=windows-1252"%>
<%@ page import="org.apache.commons.fileupload.DiskFileUpload"%>
<%@ page import="org.apache.commons.fileupload.FileItem"%>
<%@ page import="java.util.List"%>
<%@ page import="java.util.Iterator"%>
<%@ page import="java.io.File"%>
<%
System.out.println("Content Type ="+request.getContentType());
System.out.println("Cookies" + request.getCookies());
DiskFileUpload fu = new DiskFileUpload();
//If file size exceeds, a FileUploadException will be thrown
fu.setSizeMax(1000000);
List fileItems = fu.parseRequest(request);
Iterator itr = fileItems.iterator();
while(itr.hasNext()) {
FileItem fi = (FileItem)itr.next();
//Check if not form field so as to only handle the file inputs
//else condition handles the submit button input
if(!fi.isFormField()) {
System.out.println("\nNAME: "+fi.getName());
System.out.println("SIZE: "+fi.getSize());
//System.out.println(fi.getOutputStream().toString());
File fNew= new File(application.getRealPath("/"), fi.getName());
System.out.println(fNew.getAbsolutePath());
fi.write(fNew);
}
else {
System.out.println("Field ="+fi.getFieldName());
}
}
%>
Ce code mettre un fichier dans mon build\dossier web.
Comment définir un chemin d'accès vers un autre répertoire sur le serveur (en supposant que les autorisations d'écriture sont ensemble) ?
Merci,
OriginalL'auteur Greener | 2009-08-05
Vous devez vous connecter pour publier un commentaire.
Utiliser le code suivant (adapté pour la guide de l'utilisateur):
OriginalL'auteur David Rabinowitz
Pour définir un upload de fichier chemin d'accès:
OriginalL'auteur Powerlord
Pourquoi tout simplement ne pas spécifier le chemin d'accès lors de la création du fichier? Vous pouvez définir le chemin d'accès dans le cadre de la configuration de votre application (JNI), ou comme un système de propriété lorsque le serveur web démarre (à l'aide de l'-Dpath=...), et de la lecture à l'aide du Système.getProperty("chemin"). Vous pouvez même utiliser une variable d'environnement définie sur votre système et de lire que la variable d'environnement à l'aide de la Système.la fonction getenv méthode.
Alternativaly, vous pouvez créer un fichier temporaire en utilisant le Fichier.getTempFile méthode. Si vous avez juste besoin d'enregistrer le fichier pour faire quelque chose avec elle et de ne jamais l'utiliser à nouveau, c'est une meilleure option - néanmoins, vous devez supprimer le fichier vous-même après que vous l'utilisez.
OriginalL'auteur Ravi Wallau
... essayez quelque chose comme ceci:
OriginalL'auteur vector