zoukankan      html  css  js  c++  java
  • 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");


  • 相关阅读:
    springboot+maven+thymeleaf配置实战demo
    报错AbstractStandardExpressionAttributeTagProcessor
    IllegalStateException: Unable to find a @SpringBootConfiguration
    Java装饰模式
    Java容器类解析
    jdk之object源码理解
    osx brew mysql
    java String[] 初始化
    date 常用
    mac mysql
  • 原文地址:https://www.cnblogs.com/suizhikuo/p/15634825.html
Copyright © 2011-2022 走看看