Network Security Internet Technology Development Database Servers Mobile Phone Android Software Apple Software Computer Software News IT Information

In addition to Weibo, there is also WeChat

Please pay attention

WeChat public account

Shulou

What are the ways for Java to download files?

2025-01-17 Update From: SLTechnology News&Howtos shulou NAV: SLTechnology News&Howtos > Development >

Share

Shulou(Shulou.com)06/02 Report--

This article is about how Java downloads files. The editor thinks it is very practical, so share it with you as a reference and follow the editor to have a look.

1. Download as a stream

Public HttpServletResponse download (String path, HttpServletResponse response) {try {/ / path is the path of the file you want to download. File file = new File (path); / / get the file name. String filename = file.getName (); / / gets the suffix name of the file. String ext = filename.substring (filename.lastIndexOf (".") + 1) .toUpperCase (); / / download the file as a stream. InputStream fis = new BufferedInputStream (new FileInputStream (path)); byte [] buffer = new byte [fis.available ()]; fis.read (buffer); fis.close (); / / clear response response.reset (); / / set Header response.addHeader for response ("Content-Disposition", "attachment;filename=" + new String (filename.getBytes () Response.addHeader ("Content-Length", "" + file.length ()); OutputStream toClient = new BufferedOutputStream (response.getOutputStream ()); response.setContentType ("application/octet-stream"); toClient.write (buffer); toClient.flush (); toClient.close ();} catch (IOException ex) {ex.printStackTrace () } return response;}

two。 Download local files

Public void downloadLocal (HttpServletResponse response) throws FileNotFoundException {/ / download the local file String fileName = "Operator.doc" .toString (); / / default save name of the file / / read to the stream InputStream inStream = new FileInputStream ("c:/Operator.doc"); / / the storage path of the file / / sets the format of the output response.reset (); response.setContentType ("bin") Response.addHeader ("Content-Disposition", "attachment; filename=\"+ fileName +"\ "); / / Loop fetch the data in the stream byte [] b = new byte [100]; int len; try {while ((len = inStream.read (b)) > 0) response.getOutputStream (). Write (b, 0, len); inStream.close () } catch (IOException e) {e.printStackTrace ();}}

3. Download network files

Public void downloadNet (HttpServletResponse response) throws MalformedURLException {/ / download network files int bytesum = 0; int byteread = 0; URL url = new URL ("windine.blogdriver.com/logo.gif"); try {URLConnection conn = url.openConnection (); InputStream inStream = conn.getInputStream (); FileOutputStream fs = new FileOutputStream ("c:/abc.gif") Byte [] buffer = new byte [1204]; int length; while ((byteread = inStream.read (buffer))! =-1) {bytesum + = byteread; System.out.println (bytesum); fs.write (buffer, 0, byteread);} catch (FileNotFoundException e) {e.printStackTrace () } catch (IOException e) {e.printStackTrace ();}}

4. Support for opening online

Public void downLoad (String filePath, HttpServletResponse response, boolean isOnLine) throws Exception {File f = new File (filePath); if (! f.exists ()) {response.sendError (404, "File not found!"); return;} BufferedInputStream br = new BufferedInputStream (new FileInputStream (f)); byte [] buf = new byte [1024]; int len = 0; response.reset () / / very important if (isOnLine) {/ / online opening method URL u = new URL ("file:///" + filePath); response.setContentType (u.openConnection (). GetContentType ()); response.setHeader (" Content-Disposition "," inline; filename= "+ f.getName ()) / / the file name should be encoded as UTF-8} else {/ / download-only response.setContentType ("application/x-msdownload"); response.setHeader ("Content-Disposition", "attachment; filename=" + f.getName ());} OutputStream out = response.getOutputStream () While ((len = br.read (buf)) > 0) out.write (buf, 0, len); br.close (); out.close ();} Thank you for reading! This is the end of this article on "what are the ways to download Java files?". I hope the above content can be of some help to you, so that you can learn more knowledge. if you think the article is good, you can share it for more people to see!

Welcome to subscribe "Shulou Technology Information " to get latest news, interesting things and hot topics in the IT industry, and controls the hottest and latest Internet news, technology news and IT industry trends.

Views: 0

*The comments in the above article only represent the author's personal views and do not represent the views and positions of this website. If you have more insights, please feel free to contribute and share.

Share To

Development

Wechat

© 2024 shulou.com SLNews company. All rights reserved.

12
Report