java ftp deletefile_关于使用FtpClient deleteFile 删除文件时删除不了问题解决

在上传ftp时,如果远程ftp里已经有文件了,但是又不想续传(因为发现文件是文档时,做了修改后,续传时可能会导致文档出问题,比如删除文档后续部分),所以想把ftp里的文件给删除掉,但是一直报下面这个错误。

220 Microsoft FTP Service

USER test1

331 Password required for test1.

PASS 123

230 User logged in.

连接成功:192.168.3.17-21-test1-123

TYPE I

200 Type set to I.

CWD /download/fs/

250 CWD command successful.

SYST

215 Windows_NT

PASV

227 Entering Passive Mode (192,168,3,17,210,152).

LIST ????20120627.txt

125 Data connection already open; Transfer starting.

226 Transfer complete.

FtpConfig.getUploadUseFromBreak():N –这个是我自己打印的

DELE 修改20120627.txt

550-The filename, directory name, or volume label syntax is incorrect.

Win32 error: The filename, directory name, or volume label syntax is incorrect.

Error details: File system returned an error.

550 End

上传文件状态:Delete_Remote_Faild –这个是我自己打印的

经过在网上搜索都没有成功,

最后看报错了有中文乱码,就尝试改了其中的一段代码试试。

//boolean dsuccess=ftpClient.deleteFile(remoteFileName) 这里的路径应该是全路径 remote

System.out.println(remote+”—-remote”);

boolean dsuccess=ftpClient.deleteFile(new String(remote.getBytes(“gb2312″, “iso-8859-1″));

if (!dsuccess) {

System.out.println(“删除FTP文件失败,可能是路径编码错误了,现在路径编码转换”+gb2312);

return UploadStatus.Delete_Remote_Faild;

}else{

System.out.println(“删除ftp旧文件成功:”+remoteFileName);

}

如上,只是加了文件路径转码,这里改成gb2312才可以

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值