繁体   English   中英

Java和FTP服务器

[英]Java and FTP server

我与FTP服务器的连接有问题。 我有一个应用程序,必须从文件中读取数据。 我有在本地磁盘上搜索文件的代码,但是我必须更改它,因为我的所有数据都在FTP服务器上。 目前,我使用:

FileChannel fc = new FileInputStream("C:/Data/" + nameFile)
                    .getChannel();

其中,nameFile是我的文件的名称。 我创建通道,从本地磁盘中的文件加载数据。 我可以更改可以在FTP服务器上搜索文件的代码吗?

我不完全理解您的文章,但是听起来您正在寻找一些代码来检查远程FTP服务器上是否存在文件,对吗? 如果是这样,那么您将需要执行以下操作:

  1. 连接到服务器并进行身份验证。

  2. 导航到远程系统上的目录

  3. 执行远程系统的目录列表

  4. 检查目录列表中的任何文件是否与您要查找的文件匹配。

我已经使用http://www.jscape.com/products/components/java/secure-ftp-factory/上的 Secure FTP Factory成功完成了此操作

范例程式码

Ftp ftp = new Ftp(hostname,username,pass);
ftp.connect();

// get directory listing

Enumeration listing = ftp.getDirListing();

// enumerate thru listing

while(listing.hasMoreElements()) {

FtpFile file = (FtpFile)listing.nextElement();

// check to see if filename matches 
System.out.println("Filename: " + file.getFilename());

}

您必须使用FTP协议的命令,最好使用FTP库。 Apache Commons的FTPClient非常好。

为什么不只使用ftp4j之类的东西呢? http://www.sauronsoftware.it/projects/ftp4j/

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM