• java url 获取文件_[转]从URL获取文件保存到本地的JAVA代码,url 请求设置http请求头


    url下载文件的地方.参数需要 urlencode..否则会下载不到.

     

    java url 获取文件_[转]从URL获取文件保存到本地的JAVA代码,url 请求设置http请求头

    public boolean saveUrlAs(String photoUrl, String fileName) {
    //此方法只能用户HTTP协议
    try {
    URL url = new URL(photoUrl);
    HttpURLConnection connection = (HttpURLConnection) url.openConnection();
    DataInputStream in = new DataInputStream(connection.getInputStream());
    DataOutputStream out = new DataOutputStream(new FileOutputStream(fileName));
    byte[] buffer = new byte[4096];
    int count = 0;
    while ((count = in.read(buffer)) > 0) {
    out.write(buffer, 0, count);
    }
    out.close();
    in.close();
    return true;
    } catch (Exception e) {
    return false;
    }
    }

    public String getDocumentAt(String urlString) {
    //此方法兼容HTTP和FTP协议
    StringBuffer document = new StringBuffer();
    try {
    URL url = new URL(urlString);
    URLConnection conn = url.openConnection();
    BufferedReader reader = new BufferedReader(new InputStreamReader(conn.getInputStream()));
    String line = null;
    while ((line = reader.readLine()) != null) {
    document.append(line + "\n");
    }
    reader.close();
    } catch (MalformedURLException e) {
    System.out.println("Unable to connect to URL: " + urlString);
    } catch (IOException e) {
    System.out.println("IOException when connecting to URL: " + urlString);
    }
    return document.toString();
    }

    <% //测试

    String photoUrl="http://ad4.sina.com.cn/200601/12/43932_750450.jpg";
    String fileName=photoUrl.substring(photoUrl.lastIndexOf("/"));
    String filePath="d:/ghost/";
    boolean flag=saveUrlAs(photoUrl,filePath+fileName);
    out.println("Run ok!\n Get URL file"+flag);
    %>


    设置http请求头
    HttpURLConnection.setRequestProperty(String key,String value);
    //设置请求头
    conn.setRequestProperty("Charsert", "UTF-8");
    conn.setRequestProperty("Content-Type", "application/json; charset=UTF-8");//设置参数类型是json格式
    conn.setRequestProperty("Connection", "Keep-Alive");
    conn.setRequestProperty("logType", "base");


  • 相关阅读:
    Java单例模式(Singleton)以及实现
    golang 垃圾回收机制
    MySQL索引背后的数据结构及算法原理
    简述拥塞控制的四种基本算法
    分库分表
    lvalue & rvalue
    理解linux cpu load
    android使用百度地图SDK获取定位信息
    iOSUIWebView---快停下啦,你的愚蠢的行为
    【翻译自mos文章】当/var/tmp文件夹被remove掉之后,GI crash,并启动失败,原因是ohasd can not create named pipe
  • 原文地址:https://www.cnblogs.com/suizhikuo/p/15634825.html
Copyright © 2020-2023  润新知