Vmware vSphere常见问题汇总(九)
2012-07-27 23:27
330 查看
相关下载:
commons-net down:http://commons.apache.org/net/download.html
公司提出需要通过ftp上传下载文件,总结一下(备忘)
commons-net down:http://commons.apache.org/net/download.html
公司提出需要通过ftp上传下载文件,总结一下(备忘)
package cn.xt.net.ftp; import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; import java.net.SocketException; import org.apache.commons.net.ftp.FTPClient; import org.apache.commons.net.ftp.FTPFile; import org.apache.commons.net.ftp.FTPReply; import org.junit.Test; public class Ftpclient { final static String PATH="d:/zhanghuadong/"; final static String SERVICE_ADDRESS="192.168.0.115"; final static String USER="ftpuser"; final static String PASSWORD="ftpuser"; final static String DOWN_FILE_NAME="XF200070750845720090218"; /** * Ftp下载 * */ @Test public void ftpQuery(){ FTPClient client=new FTPClient(); try { client.connect(SERVICE_ADDRESS); boolean islogon=client.login(USER, PASSWORD); FTPFile[] files=null; if(islogon){ int reply=client.getReplyCode(); /**判断返回代码 */ if(!FTPReply.isPositiveCompletion(reply)){ throw new Exception("对不起,"+SERVICE_ADDRESS+" user:"+USER+" password:"+PASSWORD+" 连接出错!"); } /**更改下载的目录 */ client.changeWorkingDirectory("qyyd_fsend/"); files=client.listFiles(); File file=null; for (int i = 0; i < files.length; i++) { System.out.println(files[i].getName()); if(files[i].getName().equals("XF200070750845720090218")){ System.out.println("down..."); file=new File(PATH+files[i].getName()); } } if(file!=null){ OutputStream out=new FileOutputStream(file); client.retrieveFile("XF200070750845720090218", out); System.out.println("down success..."); out.close(); } System.out.println("logon 成功!"); } client.logout(); client.disconnect(); } catch (SocketException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } catch(Exception e){ e.printStackTrace(); } } public void ftpUpload(){ FTPClient ftp=new FTPClient(); InputStream stream=null; try{ //ftp.setDefaultPort(221); ftp.connect(SERVICE_ADDRESS); boolean islogon=ftp.login(USER, PASSWORD); if(islogon){ int recode=ftp.getReplyCode(); if(!FTPReply.isPositiveCompletion(recode)){ throw new Exception("对不起,"+SERVICE_ADDRESS+" user:"+USER+" password:"+PASSWORD+" 连接出错!"); } stream=new FileInputStream(new File(PATH+DOWN_FILE_NAME)); FTPFile[] files=ftp.listFiles(); int overname=0; for (int i = 0; i < files.length; i++) { if(files[i].getName().indexOf(DOWN_FILE_NAME)!=-1){ overname++; } } if(overname>0){ ftp.rename(DOWN_FILE_NAME, DOWN_FILE_NAME+"."+overname); } //设置文件类型 文本类型 二进制文件 区别文本会根据系统加换行符 二进制则不会 ftp.setFileType(FTPClient.ASCII_FILE_TYPE); boolean isstore=ftp.storeFile(DOWN_FILE_NAME,stream); stream.close(); if(!isstore){ System.out.println("upload fail ..."); } System.out.println("upload success..."); } }catch(Exception e){ e.printStackTrace(); }finally{ try { ftp.logout(); ftp.disconnect(); } catch (IOException e) { e.printStackTrace(); } } } public static void main(String[] args){ Ftpclient client=new Ftpclient(); client.ftpUpload(); } }
相关文章推荐
- VMware vSphere常见问题汇总(十四)
- VMware vSphere常见问题汇总(十七) 推荐
- VMware vSphere常见问题汇总(十二)
- Vmware vSphere常见问题汇总(十一) 推荐
- Vmware vSphere常见问题汇总(六) 推荐
- VMware vSphere常见问题汇总(十八)
- Vmware vSphere(Esxi)常见问题汇总
- Vmware vSphere(Esxi)常见问题汇总
- VMware vSphere常见问题汇总(二十)
- Vmware vSphere常见问题汇总(八) 推荐
- Vmware vSphere常见问题汇总(九)
- VMware vSphere常见问题汇总(十三) 推荐
- Vmware vSphere常见问题汇总
- VMware vSphere常见问题汇总(二十一)
- VMware vSphere常见问题汇总(二十五)
- VMware vSphere常见问题汇总(二十二) 推荐
- VMware vSphere常见问题汇总(十五)
- 《转》Vmware vSphere常见问题汇总
- Vmware vSphere常见问题汇总
- Vmware vSphere常见问题汇总