java上传、下载、删除ftp文件
来源:互联网 发布:淘宝漏洞,免费买衣服 编辑:程序博客网 时间:2024/05/01 09:39
一共三个类,一个工具类Ftputil.,一个实体类Kmconfig。一个测试类Test
下载地址:http://download.csdn.net/detail/myfmyfmyfmyf/6697107
Ftputil类---------------
package ftpDemo;import java.io.DataOutputStream;import java.io.InputStream;import java.io.OutputStream;import sun.net.TelnetInputStream;import sun.net.TelnetOutputStream;import sun.net.ftp.FtpClient;public class ftpUtil {// 上传文件至FTP通用方法public static void upLoadFileFtp(KmConfig kmConfig,InputStream is, String fileName){try {String ftpHost = kmConfig.getFtpHost();int port = kmConfig.getFtpPort();String userName = kmConfig.getFtpUser();String passWord = kmConfig.getFtpPassword();String path = kmConfig.getFtpPath();FtpClient ftpClient = new FtpClient(ftpHost, port);// ftpHost为FTP服务器的IP地址,port为FTP服务器的登陆端口,ftpHost为String型,port为int型。ftpClient.login(userName, passWord);// userName、passWord分别为FTP服务器的登陆用户名和密码ftpClient.binary();ftpClient.cd(path);// path为FTP服务器上保存上传文件的路径。TelnetOutputStream telnetOut = ftpClient.put(fileName);// fileName为上传的文件名DataOutputStream dataOut = new DataOutputStream(telnetOut);byte buffer[] = new byte[1024 * 1024];int count = 0;while ((count = is.read(buffer)) != -1) {dataOut.write(buffer, 0, count);}telnetOut.close();dataOut.close();ftpClient.closeServer();} catch (Exception e) {System.out.println("上传文件失败!请检查系统FTP设置,并确认FTP服务启动");}}// 删除文件至FTP通用方法public static void deleteFileFtp(KmConfig kmConfig,String fileName){try {String ftpHost = kmConfig.getFtpHost();int port = kmConfig.getFtpPort();String userName = kmConfig.getFtpUser();String passWord = kmConfig.getFtpPassword();String path = kmConfig.getFtpPath();FtpClient ftpClient = new FtpClient(ftpHost, port);// ftpHost为FTP服务器的IP地址,port为FTP服务器的登陆端口,ftpHost为String型,port为int型。ftpClient.login(userName, passWord);// userName、passWord分别为FTP服务器的登陆用户名和密码ftpClient.binary();ftpClient.cd(path);// path为FTP服务器上保存上传文件的路径。try {ftpClient.sendServer("dele " + fileName + "\r\n");} catch (Exception e) {System.out.println("删除文件失败!请检查系统FTP设置,并确认FTP服务启动");}ftpClient.closeServer();} catch (Exception e) {System.out.println("删除文件失败!");}}// 下载ftp文件public static void downloadFileFtp(KmConfig kmConfig,String fileName, String clientFileName, OutputStream outputStream){try {String ftpHost = kmConfig.getFtpHost();int port = kmConfig.getFtpPort();String userName = kmConfig.getFtpUser();String passWord = kmConfig.getFtpPassword();String path = kmConfig.getFtpPath();FtpClient ftpClient = new FtpClient(ftpHost, port);// ftpHost为FTP服务器的IP地址,port为FTP服务器的登陆端口,ftpHost为String型,port为int型。ftpClient.login(userName, passWord);// userName、passWord分别为FTP服务器的登陆用户名和密码ftpClient.binary();ftpClient.cd(path);// path为FTP服务器上保存上传文件的路径。try {TelnetInputStream in = ftpClient.get(fileName);byte[] bytes = new byte[1024];int cnt=0;while ((cnt=in.read(bytes,0,bytes.length)) != -1) {outputStream.write(bytes, 0, cnt);}outputStream.close();in.close();} catch (Exception e) {ftpClient.closeServer();e.printStackTrace();}ftpClient.closeServer();} catch (Exception e) {System.out.println("下载文件失败!请检查系统FTP设置,并确认FTP服务启动");}} //在ftp服务器上穿件文件夹 public boolean createDir(String path,FtpClient ftpClient) throws Exception{ //进入到home文件夹下 ftpClient.cd("/home"); //创建远程文件夹 //远程命令包括 //USER PORT RETR ALLO DELE SITE XMKD CDUP FEAT<br> // PASS PASV STOR REST CWD STAT RMD XCUP OPTS<br> // ACCT TYPE APPE RNFR XCWD HELP XRMD STOU AUTH<br> // REIN STRU SMNT RNTO LIST NOOP PWD SIZE PBSZ<br> // QUIT MODE SYST ABOR NLST MKD XPWD MDTM PROT<br> // 在服务器上执行命令,如果用sendServer来执行远程命令(不能执行本地FTP命令)的话,所有FTP命令都要加上/r/n<br> // ftpclient.sendServer("XMKD /test/bb/r/n"); //执行服务器上的FTP命令<br> // ftpclient.readServerResponse一定要在sendServer后调用<br> // nameList("/test")获取指目录下的文件列表<br> // XMKD建立目录,当目录存在的情况下再次创建目录时报错<br> // XRMD删除目录<br> // DELE删除文件<br> //通过远程命令 穿件一个files文件夹 ftpClient.sendServer("MKD "+ path + "\r\n"); //这个方法必须在 这两个方法中间调用 否则 命令不管用 ftpClient.binary(); ftpClient.readServerResponse(); return false; } /** * 检查文件夹是否存在 * @param dir * @param ftpClient * @return */ public boolean isDirExist(String dir, FtpClient ftpClient) { try { ftpClient.cd(dir); } catch (Exception e) { return false; } return true; } }
Kmconfig类---------------
package ftpDemo;public class KmConfig {//主机ipprivate String FtpHost = "";//端口号private int FtpPort;//ftp用户名private String FtpUser = "";//ftp密码private String FtpPassword = "";//ftp中的目录private String FtpPath = "";public String getFtpHost() {return FtpHost;}public void setFtpHost(String ftpHost) {FtpHost = ftpHost;}public int getFtpPort() {return FtpPort;}public void setFtpPort(int ftpPort) {FtpPort = ftpPort;}public String getFtpUser() {return FtpUser;}public void setFtpUser(String ftpUser) {FtpUser = ftpUser;}public String getFtpPassword() {return FtpPassword;}public void setFtpPassword(String ftpPassword) {FtpPassword = ftpPassword;}public String getFtpPath() {return FtpPath;}public void setFtpPath(String ftpPath) {FtpPath = ftpPath;}}
Test类---------------
package ftpDemo;import java.io.File;import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.InputStream;public class Test {public static void main(String[] args) {//设置ftpKmConfig km = new KmConfig();km.setFtpHost("172.20.32.48");km.setFtpPort(21);km.setFtpUser("test");km.setFtpPassword("111111");km.setFtpPath("KM");//上传到ftpftpUtil util=new ftpUtil();File file = new File("F:/文章2.jpg");InputStream in;try {in = new FileInputStream(file);util.upLoadFileFtp(km, in, "更改后的名字.jpg");} catch (FileNotFoundException e) {// TODO Auto-generated catch blocke.printStackTrace();}//页面访问: ftp://账户:密码@ip地址:端口号/文件夹目录/// ftp://test:111111@222.22.22.11:21/image/}}
1 0
- java上传、下载、删除ftp文件
- java实现FTP操作--上传,下载,删除文件
- JAVA实现FTP服务器文件的上传,下载,删除功能
- 利用Java操作FTP文件上传,下载,删除
- java测试FTP服务器的上传、下载、删除文件
- FTP连接,上传,下载,删除文件方法
- Java连接FTP服务器,并上传或下载以及删除ftp服务器中的文件
- ftp 上传 下载 删除
- C# FTP常用操作 FTP上传文件 FTP下载文件 FTP删除文件
- java实现ftp连接、登陆、上传、下载、删除文件、获取目录、文件列表
- java ftp实现文件上传和删除
- java 中使用FTP 下载 上传文件
- Java FTP(Apache)文件上传、下载
- FTP文件上传与下载(JAVA)
- java Ftp文件上传和下载
- JAVA Ftp实现文件上传于下载
- Java FTP(Apache)文件上传、下载
- Java实现FTP文件上传与下载
- 判断textField为空时让按钮不可用的代码
- 使用WebClient自动填写并提交ASP.NET页面表单的源代码
- libcurl使用笔记
- 使用cwRsync实现windows下文件定时同步(备份)
- REST介绍
- java上传、下载、删除ftp文件
- (001):获取数据源
- 眼部带状疱疹
- DBsql数据库操作的方法
- java数字格式中文化
- 两个服务器之间的数据数据交换的核…
- java数据库部分的操作得到数据库的…
- 发送邮件的代码
- Generating SSH keys for github