欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

java 實現(xiàn)微信服務(wù)器下載圖片到自己服務(wù)器

 更新時間:2017年05月23日 11:55:10   投稿:lqh  
這篇文章主要介紹了 java 實現(xiàn)微信服務(wù)器下載圖片到自己服務(wù)器的相關(guān)資料,需要的朋友可以參考下

 java 實現(xiàn)微信服務(wù)器下載圖片到自己服務(wù)器

          此功能的實現(xiàn)需要注意java 中IO流的操作及網(wǎng)路開發(fā),

          實現(xiàn)代碼:

/** 
 * @author why 
 * 
 */ 
public class PicDownload { 
 
  /** 
   * 
   * 根據(jù)文件id下載文件 
   * 
   * 
   * 
   * @param mediaId 
   * 
   *      媒體id 
   * 
   * @throws Exception 
   */ 
 
  public static InputStream getInputStream(String accessToken, String mediaId) { 
    InputStream is = null; 
    String url = "http://file.api.weixin.qq.com/cgi-bin/media/get?access_token=" 
        + accessToken + "&media_id=" + mediaId; 
    try { 
      URL urlGet = new URL(url); 
      HttpURLConnection http = (HttpURLConnection) urlGet 
          .openConnection(); 
      http.setRequestMethod("GET"); // 必須是get方式請求 
      http.setRequestProperty("Content-Type", 
          "application/x-www-form-urlencoded"); 
      http.setDoOutput(true); 
      http.setDoInput(true); 
      System.setProperty("sun.net.client.defaultConnectTimeout", "30000");// 連接超時30秒 
      System.setProperty("sun.net.client.defaultReadTimeout", "30000"); // 讀取超時30秒 
      http.connect(); 
      // 獲取文件轉(zhuǎn)化為byte流 
      is = http.getInputStream(); 
 
    } catch (Exception e) { 
      e.printStackTrace(); 
    } 
    return is; 
 
  } 
 
  /** 
   * 
   * 獲取下載圖片信息(jpg) 
   * 
   * 
   * 
   * @param mediaId 
   * 
   *      文件的id 
   * 
   * @throws Exception 
   */ 
 
  public static void saveImageToDisk(String accessToken, String mediaId, String picName, String picPath) 
      throws Exception { 
    InputStream inputStream = getInputStream(accessToken, mediaId); 
    byte[] data = new byte[10240]; 
    int len = 0; 
    FileOutputStream fileOutputStream = null; 
    try { 
      fileOutputStream = new FileOutputStream(picPath+picName+".jpg"); 
      while ((len = inputStream.read(data)) != -1) { 
        fileOutputStream.write(data, 0, len); 
      } 
    } catch (IOException e) { 
      e.printStackTrace(); 
    } finally { 
      if (inputStream != null) { 
        try { 
          inputStream.close(); 
        } catch (IOException e) { 
          e.printStackTrace(); 
        } 
      } 
      if (fileOutputStream != null) { 
        try { 
          fileOutputStream.close(); 
        } catch (IOException e) { 
          e.printStackTrace(); 
        } 
      } 
    } 
  } 
 
  /** 
   * 圖片下載 
   * 
   * @param accessToken 
   * @param mediaId 
   */ 
  public static void getPic(String accessToken, String mediaId) { 
    String requestUrl = "http://file.api.weixin.qq.com/cgi-bin/media/get?access_token=ACCESS_TOKEN&media_id=MEDIA_ID"; 
    requestUrl = requestUrl.replace("ACCESS_TOKEN", accessToken).replace( 
        "MEDIA_ID", mediaId); 
    JSONObject jsonObject = WeixinUtil.httpRequest(requestUrl, "GET", null); 
    System.out.println(jsonObject); 
  } 
 
  public static void main(String[] args) throws Exception { 
    String accessToken = ""; 
    String mediaId = ""; 
    String picName = ""; 
    saveImageToDisk(accessToken, mediaId, picName,"f:/"); 
  } 
} 

感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!

相關(guān)文章

  • Java????????HashMap遍歷方法匯總

    Java????????HashMap遍歷方法匯總

    這篇文章主要介紹了Java????????HashMap遍歷方法匯總,HashMap?的遍歷方法有很多種,不同的?JDK?版本有不同的寫法,下文關(guān)于其遍歷方法總結(jié)需要的小伙伴可以參考一下
    2022-05-05
  • Java超詳細(xì)講解排序二叉樹

    Java超詳細(xì)講解排序二叉樹

    排序二叉樹的特點是一個父節(jié)點只能有左右兩個子節(jié)點、左節(jié)點的值比父節(jié)點要小、右節(jié)點的值要比父節(jié)點要大,難度并不大,但是得花時間來理解
    2022-06-06
  • Spring整合websocket整合應(yīng)用示例(下)

    Spring整合websocket整合應(yīng)用示例(下)

    這篇文章主要介紹了Spring整合websocket整合應(yīng)用示例(下)的相關(guān)資料,需要的朋友可以參考下
    2016-04-04
  • SpringBoot沒有主清單屬性的解決方法

    SpringBoot沒有主清單屬性的解決方法

    在本篇文章里小編給大家整理的是關(guān)于解決SpringBoot沒有主清單屬性知識點,需要的朋友們學(xué)習(xí)下。
    2019-11-11
  • Java OSS批量下載并壓縮為ZIP代碼實例

    Java OSS批量下載并壓縮為ZIP代碼實例

    這篇文章主要介紹了Java OSS批量下載并壓縮為ZIP代碼實例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2019-09-09
  • java反射總結(jié)實例詳解

    java反射總結(jié)實例詳解

    這篇文章主要結(jié)合實例形式分析了介紹了java基于反射得到對象屬性值的方法,Class類,基本數(shù)據(jù)類型,類的反射等,需要的朋友可以參考下
    2017-04-04
  • Default Methods實例解析

    Default Methods實例解析

    這篇文章主要介紹了Default Methods實例解析,介紹了默認(rèn)方法的相關(guān)問題,以及與普通方法的區(qū)別,具有一定參考價值,需要的朋友可以了解下。
    2017-09-09
  • Java服務(wù)器主機信息監(jiān)控工具類的示例代碼

    Java服務(wù)器主機信息監(jiān)控工具類的示例代碼

    這篇文章主要介紹了Java服務(wù)器主機信息監(jiān)控工具類的示例代碼,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-04-04
  • 淺談對于DAO設(shè)計模式的理解

    淺談對于DAO設(shè)計模式的理解

    這篇文章主要介紹了淺談對于DAO設(shè)計模式的理解,小編覺得挺不錯的,這里分享給大家,供需要的朋友參考。
    2017-10-10
  • Java 封裝的使用詳解

    Java 封裝的使用詳解

    在面向?qū)ο蟪淌皆O(shè)計方法中,封裝(英語:Encapsulation)是指一種將抽象性函式接口的實現(xiàn)細(xì)節(jié)部分包裝、隱藏起來的方法。封裝可以被認(rèn)為是一個保護(hù)屏障,防止該類的代碼和數(shù)據(jù)被外部類定義的代碼隨機訪問。要訪問該類的代碼和數(shù)據(jù),必須通過嚴(yán)格的接口控制
    2021-11-11

最新評論