问题标签 [apache-commons-net]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
977 浏览

java - 如何测试文件传输重启代码 [setRestartOffset(offset) in Commons NET API]?

我编写了小型 FTP 客户端小程序,它使用 Commons Net API 将文件上传到 FTP 服务器。在我的代码中,我处理了“CopyStreamException”并尝试通过使用 FTPClient.setRestartOffset() 方法设置偏移量来重新启动相同的文件传输。

有什么合适的方法来测试这部分代码吗?

我尝试断开我的互联网连接,并且小程序确实以适当的偏移量重新启动了相同的文件传输,但服务器给出了 550 回复,描述为“该进程无法访问该文件,因为它正在被另一个进程使用。”!!!

任何帮助表示赞赏

谢谢。

0 投票
1 回答
1108 浏览

java - FTP 协议,jakarta commons net,文件名编码问题

我有一个可以在 Ftp 服务器中下载特定文件的工作应用程序。我有我要下载的文件名,所以我只是连接和使用: ftp.retrieveFile(filename, fileInputStream);

所以现在我们不得不改变 ftp 服务器,我认为这个新的 ftp 服务器在 linux 下运行(旧的是 windows)。现在我无法下载名称包含 ISO-8859-1 字符串的文件,例如 ç ã á ó õ。我尝试在 FTPClient 的构造函数之后使用 ftpClient.setControlEncoding("ISO-8859-1") ,但它没有用。当调用 retrevieFile 时,它​​返回 false,因为它找不到文件。但它适用于没有这些字符串的文件名。

我正在从另一个文件中读取文件名......我犯了一个错误,我读到文件名为 ISO_8859-1(但它在文件中被编码为 UTF-8),然后尝试 retrevieFile 并且它使用奇怪名称中的字符。怎么了??

编辑:

这是来自服务器的答案:

SYST 215 UNIX 类型:L8

FEAT 211-特点:EPRT EPSV MDTM PASV REST STREAM SIZE TVFS 211 End

0 投票
1 回答
1918 浏览

java - 阿帕奇公共 ftp

我使用 CrossFTP 创建 FTP 服务器 替代文字

当我使用 Firefox 连接时,它运行良好。

但是当使用 Apache commons 时它会抛出一个异常


0 投票
1 回答
6229 浏览

java - apache-commons ftp 检索多个文件

我正在尝试使用 apache-commons net FTP lib 从 FTP 服务器获取数据。如果目录中只有 1 个文件,则代码可以正常工作,但在我第二次调用retrieveFileStream() 时总是返回 null。有什么想法吗?我编写了以下示例代码来演示我的问题。

0 投票
1 回答
1390 浏览

java - 应该retrieveFile of commons FTPClient 从远程服务器中删除文件

我们正在使用 Commons FTPClient 从 ftp 服务器检索文件。我们的代码类似于:

当我们运行此代码时,文件从 FTP 服务器移动而不是复制。只是想知道这是预期的行为吗?

如果这是预期行为,从服务器检索文件副本但在服务器上保留文件副本的最佳方法是什么?(我们无权写入 FTP 服务器,因此我们无法将文件写回服务器)

任何帮助表示赞赏,

谢谢

0 投票
2 回答
2991 浏览

java - 无法连接到 ftp 服务器 java

我应该能够成功地向/从 FTP 服务器发送和接收文件。

但是,代码中没有发生任何变化,我开始得到这个:

错误:java.net.ConnectException:连接超时:连接

我正在做的是:

connect()正在执行此操作。我不明白它的原因。

0 投票
4 回答
22905 浏览

java - Apache Commons FTPClient,检查远程目录是否存在并获取权限(linux - unix)

FTPClient(Apache commons-net)是否可以检查远程目录是否存在?

我想做这样的事情:

然后获取目录的权限(chmod):

0 投票
2 回答
10653 浏览

java - FTP 客户端 - 列表文件

我无法使用 FTPClient 获得确切的文件列表。示例代码如下:

我尝试使用 enterLocalPassiveMode()/enterRemotePassiveMode()/pasv() 设置为 PASV 模式。但是,它不起作用。

另请检查Apache Commons FTPClient.listFiles ..

谢谢

0 投票
2 回答
2670 浏览

java - Java:上传文件到FTP问题(丢包)

我正在尝试将文件从我的 Java 应用程序传输到 FTP 服务器,该程序可以运行,文件已传输,但是当我在 FTO 文件夹中打开时,文件已损坏,我认为数据包在文件期间丢失转移。为什么?我该如何解决这个问题?

另一个问题,while如果我想停止文件上传,我该如何停止?

谢谢大家!

我班里的代码:

0 投票
2 回答
2541 浏览

java - 创建一个临时文件,然后使用 FTP (Java webapp) 上传它

我的 Web 应用程序的用户可以选择启动一个生成 CSV 文件(由数据库中的一些数据填充)并将其上传到 FTP 服务器(另一个部门将从那里读取文件)的进程。我只是想弄清楚如何最好地实现这一点。我使用commons netftp 功能。它提供了两种方式将数据上传到 FTP 服务器:

  • storeFile(远程字符串,本地输入流)
  • storeFileStream(字符串远程)

生成所有 CSV 数据可能需要一段时间,所以我认为始终保持连接打开(storeFileStream)不是最好的方法。这就是为什么我想生成一个临时文件,填充它,然后才传输它。

在 web 应用程序中生成临时文件的最佳方法是什么?是否安全并推荐使用File.createTempFile