用java实现ftp下载,路径的问题,很晕
首先你需要安装一个ftp服务端程序,启动起来,然后下载一个ftp客户端程序,测试能不能连接,首先这一块儿需要测试通过。
ftpClient.login(userName, passWord);// userName、passWord分别为FTP服务器的登陆用户名和密码ftpClient.binary();ftpClient.cd(path);// path为FTP服务器上保存上传文件的路径。
ftp://(|\w+(|:\w+)@)(\d{1,3}\.){3}\d{1,3}(/[^\\\/:\?\*\|]+)三个都可以匹配,不过IP的匹配不太严谨,我只是匹配了1到3位的数字,没有考虑3位数时第一位只能是1或2的情况。
应该把ftp文件目录结构和文件名称全部存入数据库,在下载时候对文件的标识状态位进行更新,方便于对文件的判断。然后从ftp下载文件即可。
使用java通过ftp下载文件,ftpClient.listFiles获取不到当前路径下的文件…
1、测试服务器防火墙阻止了发起的数据端口的连接因而FTPClient.listFiles(remote)或者FTPClient.retrieveFile(remote)方法时获取不了数据,就停止在那里什么反应都没有,出现假死状态。
2、如果你加了ftpClient.enterRemotePassiveMode();还是不行,那么就可能是你commons-net 的jia包版本太低,你可以试着引入 commons-net-jar以及以上版本的jar应该就可以了。
3、这个方法要和ftp服务器通讯,执行list命令,因此如果网络不通、服务器没登陆等都可能导致调用阻塞、出错等,你手工ftp登陆服务器试一下。
4、binary();ftpClient.cd(path);// path为FTP服务器上保存上传文件的路径。
用java写的FTP上传文件,上传到服务器liunx系统,写好的存放路径却放不…
首先,不建议你上传整个目录,首先是上传速度会慢,如果文件数量过多,还有可能造成文件损坏。建议是先tar打包后直接上传这个文件,然后再解压。
GET 服务端:下载的档名 本地端:存放的档名 PUT 本地端:上传的档名 服务端:存放的档名 下载:ex:从服务器端下载一个档名为 linux.rar 的文件到本地路径 C:\,存放档名为 LINUX_S.RAR。
ftpClient.storeFile(fileName, fis);Log.info(上传文件成功:+fileName+。