`

通过url下载文件到本地

    博客分类:
  • j2se
 
阅读更多
1:通过URL下载文件:
public class DownFile {
 /**
  * @param args
  * @throws Exception 
  */
 public static void main(String[] args) throws Exception {
  String encodedStr = java.net.URLEncoder.encode("我是中文","GBK"); // 有时用UTF-8
  download("http://www.baidu.com?args=" + encodedStr,"c:\\ret.html");
  download("http://music.yule.sohu.com/upload/zhiqianqiutian.mp3", "C:\\1.mp3");
 }
 public static void download(String urlString,String filename)throws Exception{
  URL url = new URL(urlString);
  URLConnection con = url.openConnection();
  InputStream is = con.getInputStream();
  
  byte[] bs = new byte[1024];
  int len;
  OutputStream os = new FileOutputStream(filename);
  while((len = is.read(bs))!=-1){
   os.write(bs, 0, len);
  }
  os.close();
  is.close();
 }
}

2:缓冲读取URL方法:
package com.rayoo.test;

import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
import java.io.FileOutputStream;
import java.io.InputStream;
import java.io.OutputStream;
import java.net.URL;
import java.net.URLConnection;

public class TestDownFile {

    public static void main(String[] args) throws Exception {
        java.net.URLDecoder.decode(java.net.URLEncoder.encode("我是中文", "GBK"), "GBK");
        download("http://music.yule.sohu.com/upload/zhiqianqiutian.mp3", "C:\\1.mp3");
    }

    public static void download(String urlString, String filename)
            throws Exception {
        URL url = new URL(urlString);
        URLConnection con = url.openConnection();
        InputStream is = con.getInputStream();
        OutputStream os = new FileOutputStream(filename);

        BufferedInputStream bufferInput = new BufferedInputStream(is);
        BufferedOutputStream bufferOutput = new BufferedOutputStream(os);

        byte[] bs = new byte[1024];
        int len = 0;
        while ((len = bufferInput.read(bs)) != -1) {
            bufferOutput.write(bs, 0, len);
        }

        bufferOutput.flush();

        bufferInput.close();
        bufferOutput.close();
        os.close();
        is.close();
    }

}

-----------------------------------------------------------
URL url = new URL("http://www.baidu.com");

InputStream is = url.openStream();

ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
final byte[] bytes = new byte[1024];
int read = 0;
while ((read = is.read(bytes)) >= 0) {
	byteArrayOutputStream.write(bytes, 0, read);
}

File file = new File("c:\\test.txt");
if(!file.getParentFile().exists())
file.getParentFile().mkdirs();
if(!file.exists())
file.createNewFile();

FileOutputStream fos = new FileOutputStream(file);
fos.write(byteArrayOutputStream.toByteArray());

is.close();
fos.close();
分享到:
评论

相关推荐

    java使用HttpClient通过url下载文件到本地

    综上所述,通过Java的HttpClient库,可以在Eclipse环境中编写程序,实现从指定URL下载文件到本地的功能。通过理解HttpClient的工作原理和提供的API,开发者可以构建出稳定、高效的文件下载解决方案。

    c#通过url下载到本地文件.txt

    C# 通过文件url 下载 文件,只是最简单的方法。其实要写一个下载的方法是要很复杂的过程的。可以自定义文件保存地址文件夹,图片 文档表格应该都有可以改个后缀就好

    js根据url或数据下载文件到本地download.js

    用于js下载文件到本地,js根据url或数据下载文件到本地,使用方法见https://blog.csdn.net/mudarn/article/details/118547480?spm=1001.2014.3001.5502

    PB通过URL下载局域网或者互联网上的图片

    PB通过URL下载不仅可以应用于图片,还可以扩展到其他类型的文件,如文档、音频、视频等。 压缩包子文件的文件名称列表:“PB通过URL下载文件”可能是提供了一个示例程序或者代码片段,用于演示如何在PowerBuilder中...

    通过JavaScript下载文件到本地的方法(单文件)

    - `Content-Disposition` 通常设置为 `attachment`,表示让浏览器将消息体作为附件下载到本地。 - `Content-Type` 通常为 `application/octet-stream`,用于表示通用的二进制数据流。对于ZIP文件,`Content-Type` 则...

    ABAP url下载文件

    根据提供的文件信息,本文将详细解释 ABAP 中通过 URL 下载文件的相关知识点,包括 ABAP 程序中实现此功能的基本步骤和技术要点。 ### ABAP URL 文件下载概述 ABAP(Advanced Business Application Programming)...

    Wpf下载网络文件到本地指定路径(简单示例)

    在本文中,我们将深入探讨如何在WPF应用中...通过使用`HttpClient`发起请求,处理响应数据并将其保存到本地文件,我们可以构建一个功能完整的文件下载功能。这个简单的示例对于学习和理解WPF中的网络操作非常有帮助。

    调用URL下载并显示PDF文件

    以上就是通过URL下载并显示PDF文件的主要步骤和涉及的技术点。在实际项目中,可能还需要根据需求进行更多的定制,例如添加下载进度条、支持断点续传、处理文件权限问题等。通过熟练掌握这些技术,你可以构建出一个...

    通过http协议的url下载文件

    ### 通过HTTP协议的URL下载...通过上述内容,我们可以了解到Java中如何通过HTTP协议的URL下载文件的具体实现细节及其背后的原理。这不仅有助于开发者更好地理解代码逻辑,也有助于在实际项目中更加灵活地运用这些技术。

    Web Api 通过文件流 下载文件到本地实例

    在ASP.NET Web API中,通过文件流下载文件到本地是一个常见的功能需求,它涉及到网络通信、文件处理和HTTP协议等多个方面。在这个实例中,我们将深入探讨如何实现这一过程,以及涉及的关键技术和步骤。 首先,我们...

    java下载可选择保存路径

    java生成excel并下载到本地(可选择保存路径),文件通过流的形式响应客户端浏览器下载到本地。

    windows下载服务 下载文件到本地

    本文将详细讲解如何使用C#来实现一个下载文件到本地的程序,涉及的关键技术包括Windows服务、Web请求以及文件操作。 首先,让我们从Windows服务开始。Windows服务是一种在操作系统后台运行的应用程序,它可以自动...

    ABAP 外部链接下载文件

    根据给定文件的信息,本文将围绕“ABAP外部链接...以上是对“ABAP外部链接下载文件”这一主题的详细解析,通过对关键知识点的阐述,希望能帮助读者更好地理解和掌握如何在SAP ABAP环境中实现基于URL的文件下载功能。

    VC 下载URL资源到本地

    根据资源文件的URL地址,把资源文件下载到本地,不使用Window 的API函数URLDownloadToFile,因为次函数的返回值仅表示函数执行成功,但不表示下载成功,在开发过程中总是遇到URLDownloadToFile函数返回成功,但在...

    vb url下载文件

    以上代码会将下载的文件内容保存到指定的本地路径。 4. **错误处理与优化** 实际编程中,还需要考虑网络异常、文件写入错误等可能的问题,添加适当的错误处理代码。同时,为了提高用户体验,可以使用异步请求,使...

    Java多个文件根据URL下载后打包zip导出.zip

    2. **文件I/O操作**:下载的数据需要保存到本地文件系统。Java的`java.io.File`类用于文件操作,如创建、读写和删除。`FileOutputStream`和`BufferedOutputStream`用于将网络获取的数据写入文件。如果下载的文件分布...

    C# asp.net http HttpWebRequest模拟浏览器请求下载文件到本地.txt

    C# asp.net http HttpWebRequest模拟浏览器请求下载文件到本地

    如何下载并保存文件到本地(常见问题)

    通过以上步骤和示例代码,我们可以清晰地了解到如何使用LoadRunner工具模拟文件下载的行为,并将其保存到本地。这种方法不仅适用于性能测试,还可以扩展应用于其他自动化测试场景中,帮助确保应用在各种负载条件下的...

    使用JS自动从服务器端下载文件到本地

    标题“使用JS自动从服务器端下载文件到本地”涉及到的核心技术是JavaScript的文件操作和HTTP交互,主要在前端实现从服务器获取文件并保存到本地的功能。这篇博客文章可能讲解了如何利用JavaScript的API来实现这一...

Global site tag (gtag.js) - Google Analytics