❶ java如何实现将FTP文件转移到另一个FTP服务器上
你有FTPClient就比较好办,假如你的两台FTP服务器分别为fs1和fs2
在本地开发代码思路如下:
通过FTPClient连接上fs1,然后下载(可以循环批量下载)到本地服务器,保存到一个临时目录。
下载完成后,FTPClient断开与fs1的连接,记得必须logout。
本地服务器通过FileInputStream将刚下载到临时目录的文件读进来,得到一个List<File>集合。
通过FTPClient连接上fs2,循环List<File>集合,将文件上传至fs2的特定目录,然后清空临时目录,上传完毕后,断开fs2的连接,同样必须logout。
❷ java 实现ftp上传如何创建文件夹
准备条件:java实现ftp上传用到了commons-net-3.3.jar包
首先建立ftphost连接
publicbooleanconnect(Stringpath,Stringaddr,intport,Stringusername,Stringpassword){
try{
//FTPClientftp=newFTPHTTPClient(addr,port,username,password);
ftp=newFTPClient();
intreply;
ftp.connect(addr);
System.out.println("连接到:"+addr+":"+port);
System.out.print(ftp.getReplyString());
reply=ftp.getReplyCode();
if(!FTPReply.isPositiveCompletion(reply)){
ftp.disconnect();
System.err.println("FTP目标服务器积极拒绝.");
System.exit(1);
returnfalse;
}else{
ftp.login(username,password);
ftp.enterLocalPassiveMode();
ftp.setFileType(FTPClient.BINARY_FILE_TYPE);
ftp.changeWorkingDirectory(path);
System.out.println("已连接:"+addr+":"+port);
returntrue;
}
}catch(Exceptionex){
ex.printStackTrace();
System.out.println(ex.getMessage());
returnfalse;
}
}
然后再利用ftpclient的makeDirectory方法创建文件夹
publicvoidcreateDir(Stringdirname){
try{
ftp.makeDirectory(dirname);
System.out.println("在目标服务器上成功建立了文件夹:"+dirname);
}catch(Exceptionex){
System.out.println(ex.getMessage());
}
}
断开host连接
publicvoiddisconnect(){
try{
ftp.disconnect();
}catch(IOExceptione){
e.printStackTrace();
}
}
最后是程序的调用方法
publicstaticvoidmain(String[]args){
FtpUploadTestftpupload=newFtpUploadTest();
if(ftpupload.connect("","172.39.8.x",20,"administrator","abc@123")){
ftpupload.createDir("/UPLOAD");
ftpupload.disconnect();
}
}
❸ 用java怎么获取ftp上的文件
在Java中,可以通过FtpClientUtil类连接到FTP服务器并执行文件操作。首先,需要定义类FtpClientUtil,包含服务器地址、端口、用户名和密码等属性。
要连接到服务器,可以使用open()方法。该方法尝试打开FTP服务器连接并登录。如果连接成功,则返回true,否则返回false。
为了上传文件,可以使用upload()方法。首先,确保已经成功连接到服务器。然后,使用FileInputStream读取本地文件内容,并通过TelnetOutputStream将文件传输到FTP服务器。
下载文件的方法是download()。它同样需要先连接到FTP服务器,然后通过TelnetInputStream读取文件内容,并使用FileOutputStream将文件保存到本地。
要查看FTP目录下的文件列表,可以使用getFileNameList()方法。该方法首先连接到服务器,然后使用DataInputStream读取文件列表并返回。
如果需要删除文件或目录,可以分别调用deleteFile()和deleteDirectory()方法。这两个方法都会发送相应的命令到FTP服务器并返回操作结果。
最后,可以通过调用close()方法关闭与FTP服务器的连接。