java如何从ftp下载超大文件(四)

2014-11-24 08:16:59 · 作者: · 浏览: 1

}
}
/**
*
*获得当前 系统时间 www.2cto.com
*/
/*public static String getNowTime() {
String timeStr;
DateFormat format = new SimpleDateFormat("yyyy-MM-dd HH-mm-ss");
Date currentTime = new Date(System.currentTimeMillis());
timeStr = format.format(currentTime);
return timeStr;
}
public static String getWantFileName() throws Exception {
*//** 得到当前的系统精确时间**//*
Date currentTime = new Date(System.currentTimeMillis());
*//** 接下来得到系统当前的年月日**//*
DateFormat df1 = new SimpleDateFormat("yyyyMMdd");
Date todayDate = new Date(System.currentTimeMillis());
String todayStr = df1.format(todayDate);// 得到当前的年月日
*//** 接下来得到四个比较时间的String类型;分别在00点,06点,12点和18点**//*
String compareTimeStr1 = todayStr + "00";
String compareTimeStr2 = todayStr + "06";
String compareTimeStr3 = todayStr + "12";
String compareTimeStr4 = todayStr + "18";
*//** 接下来得到四个比较时间的date类型**//*
DateFormat df2 = new SimpleDateFormat("yyyyMMddHH");
Date compareTime1 = df2.parse(compareTimeStr1);
Date compareTime2 = df2.parse(compareTimeStr2);
Date compareTime3 = df2.parse(compareTimeStr3);
Date compareTime4 = df2.parse(compareTimeStr4);
*//** 接下来由当前系统时间和四个参照时间进行比较,找出该下载的文件名**//*
if (currentTime.after(compareTime1) && currentTime.before(compareTime2)) {
// 此时应该下载00点的文件,文件名为:compareTimeStr1
System.out.println("此时要下载的文件名为:" + compareTimeStr1 + ".zip");
return compareTimeStr1;
} else if (currentTime.after(compareTime2)
&& currentTime.before(compareTime3)) {
// 此时应该下载06点的文件,文件名为:compareTimeStr2
System.out.println("此时要下载的文件名为:" + compareTimeStr2 + ".zip");
return compareTimeStr2;
} else if (currentTime.after(compareTime3)
&& currentTime.before(compareTime4)) {
// 此时应该下载12点的文件,文件名为:compareTimeStr3
System.out.println("此时要下载的文件名为:" + compareTimeStr3 + ".zip");
return compareTimeStr3;
} else if (currentTime.after(compareTime4)) {
// 此时应该下载18点的文件,文件名为:compareTimeStr4
System.out.println("此时要下载的文件名为:" + compareTimeStr4 + ".zip");
return compareTimeStr4;
} else {
// nothing to do
return null;
}
}
*/
/**
*
* 判断此时是否需要下载文件
*
* @param wantFileName
* ,此时该下载的文件名; localFileNameArray ,本地已经有的文件名
*
* @return ture--需要下载; false--本地已经有了,不需要下载
*
* **/
public static boolean ifToDownLoadFile(String wantFileName,
String[] localFileNameArray) {
if (wantFileName == null && localFileNameArray == null) {// 当想要下载的文件名获得失败
return false;
} else if (wantFileName == null && localFileNameArray != null) {// 当想要下载的文件名获得失败
return false;
} else if (wantFileName != null && localFileNameArray == null) {// 当本地没有已下载的文件
return true;
} else if (wantFileName != null && localFileNameArray != null) {// 当要下载的文件在本地还没有
if (localFileNameArray.length > 0) {
for (int i = 0; i < localFileNameArray.length; i++) {
if (localFileNameArray.equals(wantFileName + ".zip")) {
return false;
}
}
return true;
} else {
return true;
}
} else {
return false;
}
}
public static void main(String args[]) {
try {
long aa=FtpZipOption.getFileSize("2.zip");
System.out.println(aa);
FtpZipOption.downLoadZipFile("2");

} catch (Exception e) {
e.printStackTrace();
}
}
}

这个是我从网上找的,可是下载2个G的压缩包打不开,几百兆的可以!求解