HttpClient 使用get方式发送数据到服务器并下载服务器文件
2015-09-18 14:27
741 查看
助手类
public class HttpClientGetUtil
{
/***
* 模拟表单提交数据
* */
public static String
loginGet(String url){
HttpClient client = new DefaultHttpClient(); //客户端对象
HttpGet get = new HttpGet(url); //请求对象
try {
HttpResponse httpResponse = client.execute(get); //连接服务器
if(httpResponse.getStatusLine().getStatusCode()==200){ //当请求服务的返回值为200就说明请求成功了
HttpEntity entity= httpResponse.getEntity();
return EntityUtils.toString(entity, "GBK");
}
} catch (ClientProtocolException
e) {
// TODO Auto-generated
catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated
catch block
e.printStackTrace();
}
return "" ;
}
/***
* 下载文件
* */
public static void downFile(String
urlStr,String target){
HttpClient client = new DefaultHttpClient();
HttpGet get = new HttpGet(urlStr);
FileOutputStream fos= null;
try {
HttpResponse response=client.execute(get);
if(response.getStatusLine().getStatusCode()==200){
HttpEntity entity = response.getEntity();
fos = new FileOutputStream(target);
fos.write(EntityUtils. toByteArray(entity)); //写入到磁盘
System. out.println("sucess!" );
/*
InputStream is = entity.getContent();
byte [] b = new byte[1024*800];
int tem =0;
while(( tem=is.read())!=-1){
fos.write(b, 0, tem);
}
*/
}
fos.flush();
fos.close();
} catch (ClientProtocolException
e) {
// TODO Auto-generated
catch block
e.printStackTrace();
} catch (IOException
e) {
// TODO Auto-generated
catch block
e.printStackTrace();
}
}
}
测试类
public class HttpClientGetTest
{
public static void main(String[]
args) {
// TODO Auto-generated
method stub
// String url ="http://localhost:8080/mp3/servlet/HttpClientServlet";
// Scanner s = new Scanner(System.in);
// System.out.println("请输入用户名");
// String name = s.next();
// System.out.println("请输入密码");
// String password = s.next();
// String urlstr=url +"?"+"username="+name+"&password="+password;
// System.out.println( urlstr);
// String msg= HttpClientGetUtil.loginGet(urlstr);
// System.out.println( msg);
String str1 = "http://localhost:8080/mp3/aixi.jpg" ;
String target= "d:\\aixi.jpg";
HttpClientGetUtil. downFile(str1, target)
}
}
public class HttpClientGetUtil
{
/***
* 模拟表单提交数据
* */
public static String
loginGet(String url){
HttpClient client = new DefaultHttpClient(); //客户端对象
HttpGet get = new HttpGet(url); //请求对象
try {
HttpResponse httpResponse = client.execute(get); //连接服务器
if(httpResponse.getStatusLine().getStatusCode()==200){ //当请求服务的返回值为200就说明请求成功了
HttpEntity entity= httpResponse.getEntity();
return EntityUtils.toString(entity, "GBK");
}
} catch (ClientProtocolException
e) {
// TODO Auto-generated
catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated
catch block
e.printStackTrace();
}
return "" ;
}
/***
* 下载文件
* */
public static void downFile(String
urlStr,String target){
HttpClient client = new DefaultHttpClient();
HttpGet get = new HttpGet(urlStr);
FileOutputStream fos= null;
try {
HttpResponse response=client.execute(get);
if(response.getStatusLine().getStatusCode()==200){
HttpEntity entity = response.getEntity();
fos = new FileOutputStream(target);
fos.write(EntityUtils. toByteArray(entity)); //写入到磁盘
System. out.println("sucess!" );
/*
InputStream is = entity.getContent();
byte [] b = new byte[1024*800];
int tem =0;
while(( tem=is.read())!=-1){
fos.write(b, 0, tem);
}
*/
}
fos.flush();
fos.close();
} catch (ClientProtocolException
e) {
// TODO Auto-generated
catch block
e.printStackTrace();
} catch (IOException
e) {
// TODO Auto-generated
catch block
e.printStackTrace();
}
}
}
测试类
public class HttpClientGetTest
{
public static void main(String[]
args) {
// TODO Auto-generated
method stub
// String url ="http://localhost:8080/mp3/servlet/HttpClientServlet";
// Scanner s = new Scanner(System.in);
// System.out.println("请输入用户名");
// String name = s.next();
// System.out.println("请输入密码");
// String password = s.next();
// String urlstr=url +"?"+"username="+name+"&password="+password;
// System.out.println( urlstr);
// String msg= HttpClientGetUtil.loginGet(urlstr);
// System.out.println( msg);
String str1 = "http://localhost:8080/mp3/aixi.jpg" ;
String target= "d:\\aixi.jpg";
HttpClientGetUtil. downFile(str1, target)
}
}
相关文章推荐
- System.Web.HttpContext.Current.Server.MapPath("~/upload/SH") 未将对象引用设置为实例对象
- 快速Android开发系列网络篇之Android-Async-Http - Angel(转载)
- 【计算机网络】:五层协议的体系结构的模拟实现
- http://bbs.51cto.com/thread-1083322-1.html ExtJS4.2学习(二)Ext统一组件模型
- iOS 9 适配系列-网络适配&后台定位&bitcode&URL scheme
- IOS9之Xcode7允许Http
- Xcode7.0网络问题,无法获得接口数据是HTTP的问题
- java相关网络协议无响应的原因之一
- 深度链接(Deep-linking)是移动和网络之间缺失的链接
- http请求中session的创建时期
- HttpUrlConnection Post提交数据到服务器、并得到服务器返回的数据
- 飞鸽传书源码分析三-网络
- HttpClient使用post方式模拟表单提交数据到服务器并下载服务器文件
- xcode version7.0 禁用https
- Tcp协议理解
- Xcode7 网络请求报错:The resource could not be loaded because the App Transport Security policy requir
- xcode7.0-iOS9新特性之二:网络适配
- RedHat Linux网络配置过程笔记
- 计算机网络之局域网&以太网
- 计算机网络之局域网&以太网