欢迎来到天天文库
浏览记录
ID:15607950
大小:45.00 KB
页数:5页
时间:2018-08-04
《java遍历(扫描)ftp站点资源的方法》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、Java遍历(扫描)ftp站点资源的方法1.首先需要2个ftp的辅助jar包。(commons-net-1.4.1.jar和jakarta-oro-2.0.8.jar),这个可以自己去百度搜索一下并buildpath,然后就建一个类叫ListFtp后就能直接把下面的源代码复制然后运行了(当然你需改动里面你要扫描的ftp站点,和登陆用户名,密码这3样信息就OK了)。2.遍历并打印在ftp里面扫描到的资源信息,主要还是用到递归思想。如果当前遍历的是文件夹,则继续向下一层目录遍历,如果是文件则打印出来。这里如果想保存资源信息的话可以自己写一个
2、连接数据库的代码,然后把我那代码打印资源信息的地方改成插入到数据库即可。源代码:importjava.io.IOException;importjava.math.BigDecimal;importjava.util.Date;importorg.apache.commons.net.ftp.FTP;importorg.apache.commons.net.ftp.FTPClient;importorg.apache.commons.net.ftp.FTPFile;importorg.apache.commons.net.ftp.FTP
3、Reply;/**此类是直接可以运行,然后扫描*我这扫描的ftp站点是自己电脑上建立的,外网扫描不到。*如果要用此代码只需要改一下main函数里的ftp站点就能直接运行**/publicclassListFtp{privateintrecNum=0;publicstaticvoidmain(String[]args)throwsException{ListFtplistFtp=newListFtp();//要扫描的ftp站点地址,用户名和密码,其中地址不用填前半部分信息。//如果ftp不需要用户名和密码就能直接进入其实是匿名登录方式。此
4、时用户名是:anonymous,密码为空//如:listFtp.loginFtp("ftp.jmu.edu.cn","anonymous","");FTPClientftp=listFtp.loginFtp("192.168.8.102","liuli","0425");listFtp.traverse("ftp://192.168.8.102",ftp,ftp.printWorkingDirectory());System.out.println("总共有"+listFtp.recNum+"个文件。");System.out.prin
5、tln("---------------------------------");listFtp.ftpClose(ftp);}//Ftp登陆,注意此处host不能带ftp://,直接传入站点后半部分就可以了publicFTPClientloginFtp(Stringhost,Stringuser,Stringpass){intreply;booleanloginFlag=false;FTPClientftp=newFTPClient();ftp.setControlEncoding("GBK");try{ftp.connect(hos
6、t);System.out.println("Connectedto"+host);System.out.print(ftp.getReplyString());reply=ftp.getReplyCode();ftp.setFileTransferMode(FTP.ASCII_FILE_TYPE);if(!FTPReply.isPositiveCompletion(reply)){ftp.disconnect();System.err.println("FTPserverrefusedconnection.");System.exit
7、(1);}loginFlag=ftp.login(user,pass);}catch(IOExceptione){e.printStackTrace();}if(loginFlag){System.out.println("loginsuccess");System.out.println("host"+host);returnftp;}else{System.out.println("loginfailed");returnnull;}}//与ftp断开连接publicvoidftpClose(FTPClientftp){try{ft
8、p.logout();}catch(IOExceptione){e.printStackTrace();}if(ftp.isConnected()){try{ftp.disconnect();}catch(
此文档下载收益归作者所有