1 package文件操作;2
3 importjava.io.ByteArrayOutputStream;4 importjava.io.File;5 importjava.io.FileOutputStream;6 importjava.io.IOException;7 importjava.io.InputStream;8 importjava.net.HttpURLConnection;9 importjava.net.MalformedURLException;10 importjava.net.URL;11
12 public classPic696 {13
14 public static voidmain(String[] args) {15 for(int i =1;i<72;i++) {16 for (int j =1; j < 50; j++) {17
18 if(i<10&&j<10) {19 String strUrl ="https://mmslt1.com/tp/girl/FEILIN/A-00"+i+"/0"+j+".jpg";20 //System.out.println(i+" "+j);
21 System.out.println(strUrl);22 URL url;23 try{24 url = newURL(strUrl);25 try{26 Pig(url, i, j);27 } catch(IOException e) {28 System.out.println("404");29 }30 } catch(MalformedURLException e) {31
32 }33
34 }35 if(i<10&&j>=10) {36 String strUrl ="https://mmslt1.com/tp/girl/FEILIN/A-00"+i+"/"+j+".jpg";37 //System.out.println(i+" "+j);
38 System.out.println(strUrl);39 URL url;40 try{41 url = newURL(strUrl);42 try{43 Pig(url, i, j);44 } catch(IOException e) {45 System.out.println("404");46 }47 } catch(MalformedURLException e) {48 //TODO Auto-generated catch block
49 e.printStackTrace();50 }51
52 }53 if(i>=10&&j<10) {54 String strUrl ="https://mmslt1.com/tp/girl/FEILIN/A-0"+i+"/0"+j+".jpg";55 //System.out.println(i+" "+j);
56 System.out.println(strUrl);57 URL url;58 try{59 url = newURL(strUrl);60 try{61 Pig(url, i, j);62 } catch(IOException e) {63 System.out.println("404");64 }65 } catch(MalformedURLException e) {66 //TODO Auto-generated catch block
67 e.printStackTrace();68 }69
70 }71 if(i>=10&&j>=10) {72 String strUrl ="https://mmslt1.com/tp/girl/FEILIN/A-0"+i+"/"+j+".jpg";73 //System.out.println(i+" "+j);
74 System.out.println(strUrl);75 URL url;76 try{77 url = newURL(strUrl);78 try{79 Pig(url, i, j);80 } catch(IOException e) {81 System.out.println("404");82 }83 } catch(MalformedURLException e) {84 //TODO Auto-generated catch block
85 e.printStackTrace();86 }87
88 }89 }90 }91
92 }93
94 static void Pig(URL urlStr,int i,int j) throwsIOException {95 //构造连接
96 HttpURLConnection conn =(HttpURLConnection)urlStr.openConnection();97 conn.setRequestMethod("GET");98 //这个网站要模拟浏览器才行
99 conn.setRequestProperty("User-Agent","Mozilla/5.0 (Windows NT 10.0; WOW64; rv:46.0) Gecko/20100101 Firefox/46.0");100 //打开连接
101 conn.connect();102
103 //打开这个网站的输入流
104 InputStream inStream =conn.getInputStream();105 //用这个做中转站 ,把图片数据都放在了这里,再调用toByteArray()即可获得数据的byte数组
106 ByteArrayOutputStream outStream = newByteArrayOutputStream();107 //用这个是很好的,不用一次就把图片读到了文件中108 //要是需要把图片用作其他用途呢?所以直接把图片的数据弄成一个变量,十分有用109 //相当于操作这个变量就能操作图片了
110
111 byte [] buf = new byte[1024];112 //为什么是1024?113 //1024Byte=1KB,分配1KB的缓存
114
115 int len = 0;116
117 //读取图片数据
118 while((len=inStream.read(buf))!=-1){119 //System.out.println(len);
120 outStream.write(buf,0,len);121 }122 inStream.close();123 outStream.close();124
125 //把图片数据填入文件中126 //File files = new File("E://Pic696");127 //files.mkdirs();
128 File file = new File("E://Pic696/Pic"+i+"_"+j+".jpg");129
130 FileOutputStream op = newFileOutputStream(file);131
132 op.write(outStream.toByteArray());133
134 op.close();135 }136 }