java ftp编程
来源:互联网 发布:整容锥子脸 知乎 编辑:程序博客网 时间:2024/06/03 14:42
package util;import java.io.IOException;import java.io.InputStream;import java.util.Calendar;import java.util.Date;import org.apache.commons.net.ftp.FTPClient;import org.apache.commons.net.ftp.FTPReply;import org.apache.log4j.Logger;public class FTPUtil {private static Logger logger = Logger.getLogger(FTPUtil.class);public static final String ftp_Url=ConfigProperties.getPropertiesValue("ftp_Url");public static final String ftp_port=ConfigProperties.getPropertiesValue("ftp_port");public static final String ftp_path=ConfigProperties.getPropertiesValue("ftp_path");public static final String ftp_user=ConfigProperties.getPropertiesValue("ftp_user");public static final String ftp_pwd=ConfigProperties.getPropertiesValue("ftp_pwd");private static String ftpUrlXML=ConfigProperties.getValue("ftpUrlXML")+getYYYYMM()+"/";public static final String ftp_Url_sh=ConfigPropertiesSH.getPropertiesValue("ftp_Url_sh");public static final String ftp_port_sh=ConfigPropertiesSH.getPropertiesValue("ftp_port_sh");public static final String ftp_path_sh=ConfigPropertiesSH.getPropertiesValue("ftp_path_sh");public static final String ftp_user_sh=ConfigPropertiesSH.getPropertiesValue("ftp_user_sh");public static final String ftp_pwd_sh=ConfigPropertiesSH.getPropertiesValue("ftp_pwd_sh");private static String ftpUrlXML_sh=ConfigPropertiesSH.getValue("ftpUrlXML_sh")+getYYYYMM()+"/";/*** Description: 向FTP服务器上传文件*/ public static boolean uploadFile(String filename, InputStream input) { System.out.println("FTPUtil.uploadFile()>>>>>>>>>>>>>>>>>>>start>>>>>>>>>>>>>>>");boolean success = false; FTPClient ftp = new FTPClient(); try { int reply; ftp.connect(ftp_Url, Integer.valueOf(ftp_port));//连接FTP服务器 //如果采用默认端口,可以使用ftp.connect(url)的方式直接连接FTP服务器 ftp.login(ftp_user, ftp_pwd);//登录 reply = ftp.getReplyCode(); if (!FTPReply.isPositiveCompletion(reply)) { ftp.disconnect(); return success; } ftp.changeWorkingDirectory(filename); ftp.enterLocalPassiveMode(); ftp.storeFile(filename, input); logger.info(filename+"上传至:"+ftp_Url+ftp_path); input.close(); ftp.logout(); success = true; } catch (IOException e) { e.printStackTrace(); } finally { if (ftp.isConnected()) { try { ftp.disconnect(); } catch (IOException ioe) { } } } System.out.println("success*****************************:"+success); System.out.println("FTPUtil.uploadFile()<<<<<<<<<<<<<<end<<<<<<<<<<<<<<<<<<<<<"); return success; }/*** Description: 向FTP服务器上传文件(搜狐)*/ public static boolean uploadFileSH(String filename, InputStream input) { System.out.println("FTPUtil.uploadFileSH()>>>>>>>>>>>>>>>>>>>start>>>>>>>>>>>>>>>");boolean success = false; FTPClient ftp = new FTPClient(); try { int reply; ftp.connect(ftp_Url_sh, Integer.valueOf(ftp_port_sh));//连接FTP服务器 //如果采用默认端口,可以使用ftp.connect(url)的方式直接连接FTP服务器 ftp.login(ftp_user_sh, ftp_pwd_sh);//登录 reply = ftp.getReplyCode(); if (!FTPReply.isPositiveCompletion(reply)) { ftp.disconnect(); return success; } ftp.changeWorkingDirectory(filename); ftp.enterLocalPassiveMode(); System.out.println("changeWorkingDirectory**************************:"+filename); ftp.storeFile(filename, input); System.out.println(filename+"已上传到ftp上*****************************"); input.close(); ftp.logout(); success = true; } catch (IOException e) { e.printStackTrace(); } finally { if (ftp.isConnected()) { try { ftp.disconnect(); } catch (IOException ioe) { } } } System.out.println("FTPUtil.uploadFileSH():success*****************************:"+success); System.out.println("FTPUtil.uploadFileSH()<<<<<<<<<<<<<<end<<<<<<<<<<<<<<<<<<<<<"); return success; }/*** Description: 向FTP服务器创建文件夹(芒果)*/ public static boolean createDirectoryAndMovieTs(String directory, String ts) { System.out.println("FTPUtil.createDirectoryAndMovieTs()>>>>>>>>>>>>>>start>>>>>>>>>>>>>"); boolean success = false; FTPClient ftp = new FTPClient(); try { int reply; ftp.connect(ftp_Url, Integer.valueOf(ftp_port));//连接FTP服务器 //如果采用默认端口,可以使用ftp.connect(url)的方式直接连接FTP服务器 ftp.login(ftp_user, ftp_pwd);//登录 reply = ftp.getReplyCode(); if (!FTPReply.isPositiveCompletion(reply)) { ftp.disconnect(); return success; } //创建文件夹 ftp.changeWorkingDirectory("/"+ftpUrlXML); ftp.makeDirectory(directory); System.out.println("在目标服务器上成功建立了文件夹: /" +ftpUrlXML+ directory); //移动ts文件 ftp.rename("/"+ftpUrlXML+ts,"/"+ftpUrlXML+directory+"/"+ts); System.out.println("在目标服务器上移动文件"+ts+"到文件夹/" +ftpUrlXML+ directory+"下"); ftp.logout(); success = true; } catch (IOException e) { e.printStackTrace(); } finally { if (ftp.isConnected()) { try { ftp.disconnect(); } catch (IOException ioe) { } } } System.out.println("success*****************************:"+success);System.out.println("FTPUtil.createDirectoryAndMovieTs()<<<<<<<<<<<<<<<end<<<<<<<<<<<<"); return success; }/*** Description: 向FTP服务器创建文件夹(搜狐)*/ public static boolean createDirectoryAndMovieTsSH(String directory, String ts) { System.out.println("FTPUtil.createDirectoryAndMovieTsSH()>>>>>>>>>>>>>>start>>>>>>>>>>>>>"); boolean success = false; FTPClient ftp = new FTPClient(); try { int reply; ftp.connect(ftp_Url_sh, Integer.valueOf(ftp_port_sh));//连接FTP服务器 //如果采用默认端口,可以使用ftp.connect(url)的方式直接连接FTP服务器 ftp.login(ftp_user_sh, ftp_pwd_sh);//登录 reply = ftp.getReplyCode(); if (!FTPReply.isPositiveCompletion(reply)) { ftp.disconnect(); return success; } //创建文件夹 ftp.changeWorkingDirectory("/"+ftpUrlXML_sh); ftp.makeDirectory(directory); System.out.println("在目标服务器上成功建立了文件夹: /" +ftpUrlXML_sh+ directory); //移动ts文件 ftp.rename("/"+ftpUrlXML_sh+ts,"/"+ftpUrlXML_sh+directory+"/"+ts); System.out.println("在目标服务器上移动文件"+ts+"到文件夹/" +ftpUrlXML_sh+ directory+"下"); ftp.logout(); success = true; } catch (IOException e) { e.printStackTrace(); } finally { if (ftp.isConnected()) { try { ftp.disconnect(); } catch (IOException ioe) { } } } System.out.println("FTPUtil.createDirectoryAndMovieTsSH():success*****************************:"+success);System.out.println("FTPUtil.createDirectoryAndMovieTsSH()<<<<<<<<<<<<<<<end<<<<<<<<<<<<"); return success; }/*** Description: 判断ftp上是否有该视频* @author xiewenchao* @return 成功返回true,否则返回false*/ public static boolean haveTs(String str_ts) {System.out.println("FTPUtil.haveTs()>>>>>>>>>>>>>>>start>>>>>>>>>>>>>>>>"); boolean success = false; FTPClient ftp = new FTPClient(); try { int reply; ftp.connect(ftp_Url, Integer.valueOf(ftp_port));//连接FTP服务器 //如果采用默认端口,可以使用ftp.connect(url)的方式直接连接FTP服务器 ftp.login(ftp_user, ftp_pwd);//登录 reply = ftp.getReplyCode(); if (!FTPReply.isPositiveCompletion(reply)) { ftp.disconnect(); return success; } if (!ftp.changeWorkingDirectory("/"+ftpUrlXML)){ ftp.makeDirectory("/"+ftpUrlXML); ftp.changeWorkingDirectory("/"+ftpUrlXML); System.out.println("新创建的当月文件夹进入目录成功:"+"/"+ftpUrlXML); }else{ ftp.changeWorkingDirectory("/"+ftpUrlXML); System.out.println("直接当月文件夹,没创建进入目录成功:"+"/"+ftpUrlXML); } System.out.println("*************changeWorkingDirectory_mg***:/"+ftpUrlXML); ftp.enterLocalPassiveMode(); String[] list = ftp.listNames(); System.out.println("*************list***"+list.length); for(int i=0 ;i<list.length;i++){ if(str_ts.equals(list[i])){ success = true; } } System.out.println("success*****************************:"+success); ftp.logout(); } catch (IOException e) { e.printStackTrace(); } finally { if (ftp.isConnected()) { try { ftp.disconnect(); } catch (IOException ioe) { } } } System.out.println("FTPUtil.haveTs()<<<<<<<<<<<<<<end<<<<<<<<<<<<<<<"); return success; }/*** Description: 判断ftp上是否有该视频* @author xiewenchao* @return 成功返回true,否则返回false*/ public static boolean haveTsSH(String str_ts) {System.out.println("FTPUtil.haveTsSH()>>>>>>>>>>>>>>>start>>>>>>>>>>>>>>>>"); boolean success = false; FTPClient ftp = new FTPClient(); try { int reply; ftp.connect(ftp_Url_sh, Integer.valueOf(ftp_port_sh));//连接FTP服务器 //如果采用默认端口,可以使用ftp.connect(url)的方式直接连接FTP服务器 ftp.login(ftp_user_sh, ftp_pwd_sh);//登录 System.out.println("***********************ftp_user_sh="+ftp_user_sh+",ftp_pwd_sh="+ftp_pwd_sh+",ftp_Url_sh="+ftp_Url_sh+",ftp_port_sh="+ftp_port_sh); reply = ftp.getReplyCode(); System.out.println("****************************"+reply); if (!FTPReply.isPositiveCompletion(reply)) { ftp.disconnect(); System.out.println("****************************"+success); return success; } if (!ftp.changeWorkingDirectory("/"+ftpUrlXML_sh)){ ftp.makeDirectory("/"+ftpUrlXML_sh); ftp.changeWorkingDirectory("/"+ftpUrlXML_sh); System.out.println("新创建的当月文件夹进入目录成功:"+"/"+ftpUrlXML_sh); }else{ ftp.changeWorkingDirectory("/"+ftpUrlXML_sh); System.out.println("直接当月文件夹,没创建进入目录成功:"+"/"+ftpUrlXML_sh); } System.out.println("*************changeWorkingDirectory_sh***:/"+ftpUrlXML_sh); ftp.enterLocalPassiveMode(); String[] list = ftp.listNames(); System.out.println("*************list***"+list.length); for(int i=0 ;i<list.length;i++){ if(str_ts.equals(list[i])){ success = true; System.out.println("*************success***"+success); } } System.out.println("FTPUtil.haveTsSH():success*****************************:"+success); ftp.logout(); } catch (IOException e) { e.printStackTrace(); } finally { if (ftp.isConnected()) { try { ftp.disconnect(); } catch (IOException ioe) { } } } System.out.println("FTPUtil.haveTsSH()<<<<<<<<<<<<<<end<<<<<<<<<<<<<<<"); return success; }/** * 获取年月: */public static String getYYYYMM(){Calendar now = Calendar.getInstance();int year = now.get(Calendar.YEAR);int month = now.get(Calendar.MONTH) + 1;String _month= "";if(month<10){_month="0"+month;}else{_month = ""+month;}return year+_month;}/** * @param args */public static void main(String[] args) {//FTPUtil.createDirectory("SOHU201611211111");}}
读取properties.properties文件相关属性 ConfigProperties.class
package util;
import java.io.BufferedInputStream;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.UnsupportedEncodingException;
import java.util.Properties;
public class ConfigProperties {
public static String getValue(String key){
String value = null;
String propertiesValue = getPropertiesValue(key);
if(propertiesValue!=null&&!"".equals(propertiesValue)){
value = propertiesValue;
}
return value;
}
public static String getPropertiesValue(String key) {
Properties props = new Properties();
try {
props.load(ConfigProperties.class.getResourceAsStream("properties.properties"));
} catch (UnsupportedEncodingException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return props.getProperty(key);
}
}
import java.io.BufferedInputStream;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.UnsupportedEncodingException;
import java.util.Properties;
public class ConfigProperties {
public static String getValue(String key){
String value = null;
String propertiesValue = getPropertiesValue(key);
if(propertiesValue!=null&&!"".equals(propertiesValue)){
value = propertiesValue;
}
return value;
}
public static String getPropertiesValue(String key) {
Properties props = new Properties();
try {
props.load(ConfigProperties.class.getResourceAsStream("properties.properties"));
} catch (UnsupportedEncodingException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return props.getProperty(key);
}
}
阅读全文
0 0
- java ftp编程
- 关于java中FTP编程
- java网络编程(4):FTP
- JAVA Ftp编程--远程下载文件
- 用Java实现FTP服务器-Java基础-Java-编程开发
- java FTP
- java ftp
- Java FTP
- java ftp
- java ftp
- Ftp客户端编程
- Ftp客户端编程结构
- VB与FTP编程
- VC++实现FTP编程
- VC++实现FTP编程
- FTP客户端编程
- qt FTP客户端编程
- qt FTP客户端编程
- HTTP状态码大全
- svn检出数据的方式
- C#连接数据库最基本操作之sql语句 DML
- Mysql上查询字段多行变成一行,函数小技巧.
- ubuntu服务器下中文路径资源无法找到的一些问题
- java ftp编程
- 智能领域死伤无数,这家公司为什么能被谷歌亚马逊看重?
- 人工智能将改变我们变老的方式
- AI有可能了解人类感情吗?
- 本地编译 gulp 项目
- Dataguard日常维护及故障解决
- <mvc:annotation-driven/>作用
- android-Scheme
- C# Winform Socket 即时通讯 (客户端+服务端)