FTPClient.storeFile返回false

纠结了两天的bug总是解决了。
网上有很多方法,导致出现这种情况的问题很多,。
1.可能是编码问题。
FTPClient的默认编码格式是在这里插入图片描述如果编码格式的问题,需要代码中添加

client.setControlEncoding("UTF-8");

2.没有设置成被动模式
关于被动模式和主动模式,查看FTP协议主动(Port)模式和被动(Passive)两种模式详解
简单的说就是被动模式是服务端开端口(被动模式需要在VSFTPD中设置,默认是不开启的),主动模式是客户端开端口(因为客户端不容易控制所以一般采用被动模式)。
在代码中添加

client.enterLocalPassiveMode();

3.文件权限问题(我的问题)
加入你之前在你的上目录里手动创建过目录或者文件就很有可能是这种问题,在你的目录下使用ll命令可以查看
在这里插入图片描述我的test目录就是这个问题。解决方法:root登录删除目录,使用对应的用户创建目录就可以了。

发布了16 篇原创文章 · 获赞 3 · 访问量 459

猜你喜欢

转载自blog.csdn.net/gv_2486/article/details/105595982