免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1491 | 回复: 0
打印 上一主题 下一主题

java远程采集 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2008-08-18 14:57 |只看该作者 |倒序浏览
这是一个远程的采集主要采集网络对象。比较不错收了。
/*
* Created on 2006-1-16
* Last modified on 2006-1-17
* Made in GamVan
* www.GamVan.com
*/
package com.gamvan.net;
import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.net.HttpURLConnection;
/**
* 网络文件存取类
* @author GamVan by 我容易么我
*/
public class FileOperate {
public FileOperate(){
}
/** 如果远程文件读取失败用此文件替代 */
public String readerr = "";
/** 收集运行哪个结果或错误信息 */
public String message = "";
/**
* 根据文件url地址采集并创建到本地
* @param fileUrl 文件url路径
* @param filePathAndName 预创建到本地的文件的绝对路径含文件名已经扩展名
* @return
* @throws IOException
* 2006-1-17 4:48:06 made in GamVan
*/
public boolean createFile(String fileUrl
, String filePathAndName) throws IOException
{
boolean bea = false;
java.net.URL urlfile = null;
HttpURLConnection httpUrl = null;
BufferedInputStream bis = null;
BufferedOutputStream bos = null;
File f = new File(filePathAndName);
try{
//连接指定的网络资源,获取网络输入流
urlfile = new java.net.URL(fileUrl);
httpUrl = (HttpURLConnection)urlfile.openConnection();
httpUrl.connect();
bis = new BufferedInputStream(httpUrl.getInputStream());
}catch(Exception e){
if(readerr!=null && !readerr.equals("")){
try{
urlfile = new java.net.URL(readerr);
httpUrl = (HttpURLConnection)urlfile.openConnection();
httpUrl.connect();
bis = new BufferedInputStream(httpUrl.getInputStream());
}catch(Exception e1){
message = e1.toString();
}
}
message = e.toString();
}
try{
bos =
new BufferedOutputStream(new FileOutputStream(f));;
byte[] b = new byte[1024];
while(bis.read(b)!=-1)
{
bos.write(b);
}
bea = true;
message = fileUrl+" 采集成功!文件已存储至:"+filePathAndName;
}catch(Exception e){
bea = false;
message = e.toString();
}finally{
try{
bos.flush();
bis.close();
httpUrl.disconnect();
}catch(Exception e){
message = e.toString();
}
}
return bea;
}
public void setReaderr(String readerr) {
this.readerr = readerr;
}
public String getMessage() {
return this.message;
}
/* test */
public static void main(String args[]){
//远程文件路径
String s1 = "http://club.gamvan.com/club/GVimgs/mainLogo.gif";
//本地存放路径
String s2 = "E:\MYJAVA\1.jpg";
try {
FileOperate fo = new FileOperate();
fo.setReaderr("http://club.gamvan.com/club/GVimgs/mainLogo.gif");
fo.createFile(s1,s2);
System.out.println(fo.getMessage());
} catch (IOException e) {
e.printStackTrace();
}
}
}
               
               
               

本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u/26845/showart_1133207.html
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP