【发布时间】:2011-07-10 10:36:13
【问题描述】:
我正在使用 Apache Commons 的 FTPClient 与 FTP 服务器通信并上传一些文件。在代码中,我发现函数 isPositivePreliminary() 返回 false,因为它得到的回复代码是 550。相同的代码访问其他 FTP 站点的行为不同(没有问题)。
但是,当我尝试在 shell 中使用相同的地址、用户和密码打开常规 FTP 连接时,一切正常:进入被动模式、上传和重命名文件。
那是什么?为什么我的代码无法访问它?我猜这是远程 FTP 配置中的问题,但我需要告诉我的客户什么?
【问题讨论】:
-
我知道它是什么(供将来参考):错误 550 指出“文件名、目录名或卷标语法不正确。”。在我的代码中,我尝试上传一个名称中带有冒号的文件,这个特定的 FTP 服务器不喜欢这个文件。
-
您能添加您的解决方案作为答案吗?
-
嗨 Paulo - 抱歉,我刚刚看到你的问题。好吧,我实际上并没有更改代码。相反,我做了正确的事情:告诉客户他们应该更改他们的设置。但说真的,冒号在我选择的文件名中,所以我必须将默认值更改为其他内容。我不确定我是否想深入研究转义文件名,如果我能提供帮助的话..
-
顺便说一句,您知道您在 cmets 上没有收到电子邮件通知吗?奇怪..
-
(我根本不使用电子邮件通知,所以不,我不知道。)只需输入您在此处作为 cmets 写的答案,(然后接受它)。 (我不喜欢实际上不再开放的未回答问题,当我浏览未回答问题标签时,它们会占用我的时间。)
标签: java ftp ftp-client apache-commons-net