tinguo002

           

          java下載網頁內容和網絡圖片

          import java.io.BufferedReader;
          import java.io.ByteArrayOutputStream;
          import java.io.File;
          import java.io.FileOutputStream;
          import java.io.InputStream;
          import java.io.InputStreamReader;
          import java.net.HttpURLConnection;
          import java.net.URL;

          public class UrlResource {

              
          public static void main(String[] args){
                  
          try {
                      System.out.println(UrlResource.getUrlDetail(
          "http://www.baidu.com",true));
                      saveUrlFile(
          "http://www.baidu.com/img/baidu_jgylogo3.gif""D:\\1.gif");
                  }
           catch (Exception e) {
                      e.printStackTrace();
                  }

              }

              
              
          //獲取網絡文件,轉存到fileDes中,fileDes需要帶文件后綴名
              public static void saveUrlFile(String fileUrl,String fileDes) throws Exception
              
          {
                  File toFile 
          = new File(fileDes);
                  
          if (toFile.exists())
                  
          {
          //            throw new Exception("file exist");
                      return;
                  }

                  toFile.createNewFile();
                  FileOutputStream outImgStream 
          = new FileOutputStream(toFile);
                  outImgStream.write(getUrlFileData(fileUrl));
                  outImgStream.close();
              }

              
              
          //獲取鏈接地址文件的byte數據
              public static byte[] getUrlFileData(String fileUrl) throws Exception
              
          {
                  URL url 
          = new URL(fileUrl);
                  HttpURLConnection httpConn 
          = (HttpURLConnection) url.openConnection();
                  httpConn.connect();
                  InputStream cin 
          = httpConn.getInputStream();
                  ByteArrayOutputStream outStream 
          = new ByteArrayOutputStream();
                  
          byte[] buffer = new byte[1024];
                  
          int len = 0;
                  
          while ((len = cin.read(buffer)) != -1{
                      outStream.write(buffer, 
          0, len);
                  }

                  cin.close();
                  
          byte[] fileData = outStream.toByteArray();
                  outStream.close();
                  
          return fileData;
              }

              
              
          //獲取鏈接地址的字符數據,wichSep是否換行標記
              public static String getUrlDetail(String urlStr,boolean withSep) throws Exception
              
          {
                  URL url 
          = new URL(urlStr);
                  HttpURLConnection httpConn 
          = (HttpURLConnection)url.openConnection();
                  httpConn.connect();
                  InputStream cin 
          = httpConn.getInputStream();
                  BufferedReader reader 
          = new BufferedReader(new InputStreamReader(cin,"UTF-8"));
                  StringBuffer sb 
          = new StringBuffer();
                  String rl 
          = null;
                  
          while((rl = reader.readLine()) != null)
                  
          {
                      
          if (withSep)
                      
          {
                          sb.append(rl).append(System.getProperty(
          "line.separator"));
                      }

                      
          else
                      
          {
                          sb.append(rl);
                      }

                  }

                  
          return sb.toString();
              }

              
          }

          // 禁止圖像緩存
                  response.setHeader("Pragma", "no-cache");
                  response.setHeader("Cache-Control", "no-cache");
                  response.setDateHeader("Expires", 0);


          文章詳細參考:http://blog.csdn.net/pandakong/article/details/7430844


          歡迎大家訪問我的個人網站 萌萌的IT人

          posted on 2014-08-04 18:38 一堣而安 閱讀(1514) 評論(0)  編輯  收藏 所屬分類: java

          導航

          統計

          常用鏈接

          留言簿(1)

          隨筆分類

          隨筆檔案

          收藏夾

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 溧阳市| 芷江| 建阳市| 前郭尔| 彰化市| 康乐县| 余庆县| 秀山| 淄博市| 广西| 六盘水市| 航空| 华池县| 阳泉市| 巴马| 盐津县| 防城港市| 岳池县| 嘉鱼县| 贵港市| 淮南市| 响水县| 库车县| 尼木县| 沈丘县| 辽宁省| 柳州市| 榆树市| 化州市| 焉耆| 东光县| 广州市| 黎城县| 即墨市| 资中县| 广河县| 康乐县| 吉木萨尔县| 如皋市| 高密市| 响水县|