求解:向FTP服务器上传多个文件时出错!!!!!!!!!!
如题,当我像FTP服务器上传1个文件时,可以成功,...
贴上代码。。。清楚些....
贴上代码。。。清楚些....
public int SynNewsCateAnnex(List urlsList,Map ftpInfoMap) {
int result=1;
FTPClient ftp = new FTPClient();
try {
String localPath = "/newsCatetoryIcon";
String ip = ftpInfoMap.get("ip").toString();
int port = Integer.valueOf(ftpInfoMap.get("port").toString());
String userName = ftpInfoMap.get("userName").toString();
String password = ftpInfoMap.get("password").toString();
ftp.connect(ip, port);
ftp.login(userName, password);
if (!FTPReply.isPositiveCompletion(ftp.getReplyCode())) {
System.out.println("未连接到FTP,用户名或密码错误。");
ftp.disconnect();
result=0;
} else {
System.out.println("FTP连接成功。");
}
for(int i=0;i<urlsList.size();i++){
File file = new File(urlsList.get(i).toString());
uploadAnnex(ftp, file, localPath);
}
ftp.logout();
} catch (SocketException e) {
// TODO Auto-generated catch block
e.printStackTrace();
result=0;
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
result=0;
} finally {
try {
if(ftp.isConnected()){
ftp.disconnect();
}
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
result=0;
}
}
return result;
}
private void uploadAnnex(FTPClient ftp, File file, String localPath) throws IOException {
FileInputStream fis = null;
OutputStream os = null;
ftp.makeDirectory(localPath); // 设置上传目录
ftp.changeWorkingDirectory(localPath); // 设置把上传的文件放到指定的目录
ftp.setControlEncoding("utf-8");
// 设置文件类型(二进制)
ftp.setFileType(FTPClient.BINARY_FILE_TYPE);
ftp.deleteFile(file.getName()); // 如果文件在该目录下存在,则删除
fis = new FileInputStream(file);
System.out.println("======"+file.getName());
os = ftp.appendFileStream(file.getName());
byte[] bytes = new byte[(int) file.length()];
int len = 0;
while ((len = fis.read(bytes)) != -1) {
os.write(bytes, 0, len);
}
os.flush();
IOUtils.closeQuietly(fis);
os.close();
}
...全文
相关推荐
Java实现ftp上传下载、删除文件及在ftp服务器上传文件夹的方法
删除文件,调用FTP客户端的`deleteFile`方法。6. 创建文件夹,调用FTP客户端的`mkdir`或`mkdirs`方法。7. 异常处理,确保在出错时正确关闭资源并提供反馈。
Debian Unstable(Sid)实战指南:从原理到日常维护
Debian Unstable(代号Sid)并非传统意义上的‘不稳定发行版’,而是一个面向开发者与前沿技术实践者的持续集成软件流。其核心原理是基于严格的包上传验证、依赖锁死机制与testing/sid协同演进模型,确保‘最新’不等于‘不可控’。技术价值在于无缝对接上游内核、Mesa图形栈、Rust工具链等快速迭代生态,支撑硬件驱动调试、容器构建、Wayland开发等高时效性场景。本文深入解析Sid的真实可用性光谱、升级九道坎、典型故障修复范式及长期维护策略,帮助用户将Sid从高风险实验环境转化为可持续的生产
用批处理上传文件到ftp目录下的实现方法
**多文件上传**:一次上传多个文件。2. **目录上传**:上传整个目录及其子目录下的所有文件。3. **定时任务**:结合Windows计划任务功能,实现定时自动上传文件。
Linux实现文件上传ftp服务器脚本代码
在Linux环境中,自动上传文件到FTP服务器是一项常见的任务,尤其对于开发者和系统管理员来说,能够自动化这个过程可以大大提高工作效率。
Java实现图片上传至服务器功能(FTP协议)
常用的图片上传技术有HTTP协议和FTP协议。其中,HTTP协议通常用于客户端和服务器端的通信,而FTP协议则专门用于文件传输。


