gistfile1.txt package mzitu;import java.io.ByteArrayOutputStream; import java.io.File; import java.io.FileOutputStream; import java.io.InputStream; import java.net.HttpURLConnection; import java.net.URL; /** * http://pic.dofay.com/2015/01/0
package mzitu; import java.io.ByteArrayOutputStream; import java.io.File; import java.io.FileOutputStream; import java.io.InputStream; import java.net.HttpURLConnection; import java.net.URL; /** * http://pic.dofay.com/2015/01/01x01.jpg * 据此规律编写 * 2015年6月1日 */ public class Mzitu { public static void main(String[] args) { find(); } public static void writeImageToDisk(byte[] img, String fileName){ try { File file = new File("D:\\360Downloads\\mzitu\\" + fileName); FileOutputStream fops = new FileOutputStream(file); fops.write(img); fops.flush(); fops.close(); System.out.println(fileName + ":图片已经写入"); } catch (Exception e) { //e.printStackTrace(); } } public static byte[] getImageFromNetByUrl(String strUrl){ try { URL url = new URL(strUrl); HttpURLConnection conn = (HttpURLConnection)url.openConnection(); conn.setRequestMethod("GET"); conn.setConnectTimeout(50 * 1000); InputStream inStream = conn.getInputStream();//通过输入流获取图片数据 byte[] btImg = readInputStream(inStream);//得到图片的二进制数据 return btImg; } catch (Exception e) { //e.printStackTrace(); } return null; } public static byte[] readInputStream(InputStream inStream) throws Exception{ ByteArrayOutputStream outStream = new ByteArrayOutputStream(); byte[] buffer = new byte[1024]; int len = 0; while( (len=inStream.read(buffer)) != -1 ){ outStream.write(buffer, 0, len); } inStream.close(); return outStream.toByteArray(); } public static String int2Str(int i){ String t = String.valueOf(i); if (t.length()==1){ t = "0"+t; } return t; } public static void find(){ boolean haspic = true; int num = 0; String url = "http://pic.dofay.com/"; for (int yyyy = 2014 ; yyyy <= 2014 ; yyyy++){ for (int mm = 1 ; mm <= 12 ; mm++){ for (int dd = 1 ; dd <= 31 ; dd++){ haspic = true; num = 0; while(haspic){ num++; String picurl = url+yyyy+"/"+int2Str(mm)+"/"+int2Str(dd)+"x"+int2Str(num)+".jpg"; byte[] btImg = getImageFromNetByUrl(picurl); if(null != btImg && btImg.length > 0){ String fileName = yyyy+"-"+int2Str(mm)+"-"+int2Str(dd)+"x"+int2Str(num)+".jpg"; //System.out.println(fileName+" 读取到:" + btImg.length + " 字节"); writeImageToDisk(btImg, fileName); }else{ haspic = false;; } } } } } } }