2012-01-01 109 views
0

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

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

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

回答

2

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

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

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

  3. 执行远程系统

  4. 检查的目录列表,查看是否有在目录列表中的文件符合您所looing该文件。

我做这个成功使用安全FTP厂在http://www.jscape.com/products/components/java/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()); 

} 
1

你必须使用FTP协议的命令和最好的FTP库。 Apache的百科全书FTPClient是相当不错的。