给位大虾,今天想做一个批量下载,希望大家能给我点指引,我想实现的功能就是每个链接前面有一个复选框,下面有一个下载选中项,我希望单击就能下载选中的那些链接,大家都来指教一下该怎么做!选择之后后台根据选择的文件进行压缩,然后提供压缩文件的数据流就行了!文件的传输都是用的流,你可以用一个流传输多个文件,一次一个文件,传完一个flash下那种选多个资源,然后一次下载,基本上都是得到压缩文件. 你可以自己后台压缩好再下载
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.URL;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Test {
public static void main (String[] args) {
System.out.println(area("http://ipwhois.cnnic.net.cn/ipwhoisresult.php?query_option=ipv4&txtquery=123.123.123.123"));
}
public static String area(String urlAddress){
try {
URL url= new URL(urlAddress);
HttpURLConnection h=(HttpURLConnection)url.openConnection();
BufferedReader in = new BufferedReader(new InputStreamReader(h.getInputStream()));
StringBuilder sb = new StringBuilder();
String s;
while((s = in.readLine()) != null){
sb.append(s);
}
s = sb.toString();
return mat(s, "网络名.*?>\\s+(.*?)<");
} catch (Exception e) {
e.printStackTrace();
}
return "未找到相应匹配";
}
public static String mat(String source, String regex){
Pattern p = Pattern.compile(regex);
Matcher matcher = p.matcher(source);
while(matcher.find()){
return matcher.group(1);
}
return " ";
}
}
getInputStream()就是文件流,保存到本地,等批量下载后用zip打包
------解决方案--------------------------------------------------------HttpURLConnection