Les exemples de cet article partagent le code spécifique pour le téléchargement du fichier d'implémentation Java pour votre référence. Le contenu spécifique est le suivant
Public HttpServletResponse Download (String Path, HttpServletResponse Response) {try {// Le chemin fait référence au chemin du fichier à télécharger. Fichier fichier = nouveau fichier (chemin); // Obtenez le nom du fichier. String filename = file.getName (); // Obtenez le nom du suffixe du fichier. String ext = filename.substring (filename.LastIndexof (".") + 1) .ToupperCase (); // Téléchargez le fichier sous la forme d'un flux. InputStream fis = new BufferedInputStream (new FileInputStream (path)); octet [] buffer = nouveau octet [fis.available ()]; fis.read (tampon); fis.close (); // Réponse de réponse claire. Response.RESET (); // Définit l'en-tête de réponse.AddHeader ("Content-Disposition", "Pixe; FileName =" + New String (filename.getBytes ())); Response.AddHeader ("Content-Length", "" + File.Length ()); OutputStream toClient = new BufferedOutputStream (Response.getOutputStream ()); Response.SetContentType ("Application / Octet-Stream"); ToClient.write (tampon); toClient.flush (); toClient.close (); } catch (ioException ex) {ex.printStackTrace (); } Retour Response; } public void downloadLocal (HttpServletResponse Response) lève filenotfoundException {// Télécharger la chaîne de fichiers locaux fileName = "operator.doc" .toString (); // le nom de sauvegarde par défaut du fichier // read inputStream instream = new FileInputStream ("c: /operator.doc"); // le chemin de stockage du fichier // définit le format de la sortie réponse.reset (); réponse.setContentType ("bin"); Response.AddHeader ("Content-Disposition", "Pixe; FileName = /" "+ FileName +" / ""); // Loucle les données dans l'octet de flux [] b = nouveau octet [100]; int len; try {while ((len = insiteam.read (b))> 0) réponse.getOutputStream (). write (b, 0, len); instream.close (); } catch (ioException e) {e.printStackTrace (); }} public void downloadNet (HttpServletResponse Response) lève MalformEdUrException {// Télécharger le fichier réseau int bytesum = 0; int bytereread = 0; Url url = new URL ("windine.blogdriver.com/logo.gif"); essayez {urlConnection conn = url.openconnection (); InputStream insiteam = Conn.getInputStream (); FileoutputStream fs = new FileOutputStream ("c: /abc.gif"); octet [] tampon = nouveau octet [1204]; longueur int; while ((byteread = insiteam.read (tampon))! = -1) {bytesum + = byterEad; System.out.println (bytesum); fs.write (tampon, 0, byteread); }} catch (filenotFoundException e) {e.printStackTrace (); } catch (ioException e) {e.printStackTrace (); }}// un moyen d'ouvrir des fichiers en ligne
Public Void Download (String Filepath, HttpServletResponse Response, boolean iSonline) lève une exception {fichier f = nouveau fichier (filepath); if (! f.exists ()) {Response.Senderror (404, "Fichier introuvable!"); retour; } BufferedInputStream br = new BufferedInputStream (new FileInputStream (f)); octet [] buf = nouveau octet [1024]; int len = 0; réponse.RESET (); // très important if (iSonline) {// Méthode ouverte en ligne URL U = new URL ("fichier: ////" + filepath); réponse.setContentType (U.OpenConnection (). GetContentType ()); Response.sethEader ("Content-Disposition", "inline; filename =" + f.getName ()); // Le nom de fichier doit être codé sous la forme utf-8} else {// pure download method toit.setContentType ("application / x-msdownload"); Response.sethEader ("Content-Disposition", "attachement; filename =" + f.getName ()); } OutputStream Out = Response.getOutputStream (); while ((len = br.read (buf))> 0) out.write (buf, 0, len); br.close (); out.close (); }Ce qui précède est tout le contenu de cet article. J'espère que cela sera utile à l'apprentissage de tous et j'espère que tout le monde soutiendra davantage Wulin.com.