java操作文件_java操作FTP,实现文件上传下载删除操作
上传文件到FTP服务器:
/**
* Description: 向FTP服务器上传文件
* @param url FTP服务器hostname
* @param port FTP服务器端口,如果默认端口请写-1
* @param username FTP登录账号
* @param password FTP登录密码
* @param path FTP服务器保存目录
* @param filename 上传到FTP服务器上的文件名
* @param input 输入流
* @return 成功返回true,否则返回false
*/
public static boolean uploadFile(String url, int port, String username, String password, String path,
String filename, InputStream input)
{
boolean success = false;
FTPClient ftp = new FTPClient();
try
{
int reply;
// 连接FTP服务器
if (port > -1)
{
ftp.connect(url, port);
}
else
{
ftp.connect(url);
}
// 登录FTP
ftp.login(username, password);
reply = ftp.getReplyCode();
if (!FTPReply.isPositiveCompletion(reply))
{
ftp.disconnect();
return success;
}
ftp.changeWorkingDirectory(path);
ftp.storeFile(filename, input);
input.close();
ftp.logout();
success = true;
}
catch (IOException e)
{
success = false;
logger.error(EXCEPTION_NAME, e);
}
finally
{
if (ftp.isConnected())
{
try
{
ftp.disconnect();
}
catch (IOException e)
{
logger.error(EXCEPTION_NAME, e);
}
}
}
return success;
}
从FTP服务器下载文件:
/**
* Description: 从FTP服务器下载文件
* @Version1.0 Jul 27, 2008 5:32:36 PM by 崔红保(cuihongbao@d-heaven.com)创建
* @param url FTP服务器hostname
* @param port FTP服务器端口
* @param username FTP登录账号
* @param password FTP登录密码
* @param remotePath FTP服务器上的相对路径
* @param fileName 要下载的文件名
* @param localPath 下载后保存到本地的路径
* @return
*/
public static boolean downloadFile(String url, int port, String username, String password, String remotePath,
String fileName, String localPath)
{
boolean success = false;
FTPClient ftp = new FTPClient();
try
{
int reply;
// 连接FTP服务器
if (port > -1)
{
ftp.connect(url, port);
}
else
{
ftp.connect(url);
}
ftp.login(username, password);//登录
reply = ftp.getReplyCode();
if (!FTPReply.isPositiveCompletion(reply))
{
ftp.disconnect();
return success;
}
ftp.changeWorkingDirectory(remotePath);//转移到FTP服务器目录
FTPFile[] fs = ftp.listFiles();
for (FTPFile ff : fs)
{
if (ff.getName().equals(fileName))
{
File localFile = new File(localPath + "/" + ff.getName());
OutputStream is = new FileOutputStream(localFile);
ftp.retrieveFile(ff.getName(), is);
is.close();
}
}
ftp.logout();
success = true;
}
catch (IOException e)
{
logger.error(EXCEPTION_NAME, e);
}
finally
{
if (ftp.isConnected())
{
try
{
ftp.disconnect();
}
catch (IOException e)
{
logger.error(EXCEPTION_NAME, e);
}
}
}
return success;
}
删除FTP服务器上的文件:
/**
*
*
* @param url FTP服务器IP地址
* @param port FTP服务器端口
* @param username FTP服务器登录名
* @param password FTP服务器密码
* @param remotePath 远程文件路径
* @param fileName 待删除的文件名
* @return
* @see [类、类#方法、类#成员]
*/
public static boolean deleteFtpFile(String url, int port, String username, String password, String remotePath,
String fileName)
{
boolean success = false;
FTPClient ftp = new FTPClient();
try
{
int reply;
// 连接FTP服务器
if (port > -1)
{
ftp.connect(url, port);
}
else
{
ftp.connect(url);
}
// 登录
ftp.login(username, password);
reply = ftp.getReplyCode();
if (!FTPReply.isPositiveCompletion(reply))
{
ftp.disconnect();
return success;
}
// 转移到FTP服务器目录
ftp.changeWorkingDirectory(remotePath);
success = ftp.deleteFile(remotePath + "/" + fileName);
ftp.logout();
}
catch (IOException e)
{
logger.error(EXCEPTION_NAME, e);
success = false;
}
finally
{
if (ftp.isConnected())
{
try
{
ftp.disconnect();
}
catch (IOException e)
{
logger.error(EXCEPTION_NAME, e);
}
}
}
return success;
}
所需的jar包在附件里
下载次数: 275
分享到:
2012-12-01 11:07
浏览 14302
评论
java操作文件_java操作FTP,实现文件上传下载删除操作相关推荐
- Java操作ftp,上传,下载,删除操作
使用java commons net包中的api可以方便操作ftp操作. import java.io.File; import java.io.FileInputStream; import jav ...
- FastDFS上传下载删除操作
1.第一步 添加fastdfs-client.properties配置文件并修改 ## fastdfs-client.propertiesfastdfs.connect_timeout_in_seco ...
- c#ftp操作全解:创建删除目录,上传下载文件,删除移动文件,文件改名,文件目录查询
全栈工程师开发手册 (作者:栾鹏) c#教程全解 c#实现ftp的操作.包括创建删除目录,上传下载文件,删除移动文件,文件改名,文件目录查询. 在调试ftp前,需要在目标主机上开启ftp功能.这里在本 ...
- c# FTP服务器文件上传下载等操作
文章目录 判断FTP连接 FTP文件上传 FTP文件下载 删除指定FTP文件 删除指定FTP文件夹 获取FTP上文件夹/文件列表 创建文件夹 获取指定FTP文件大小 更改指定FTP文件名称 移动指定F ...
- 阿里云oss 使用, 基于Nginx 配置云服务器+oss的内网访问 , 及使用Java SDK 完成上传,下载,删除,查询文件列表操作
一.同阿里产品,云服务器和存储对象oss-配置内网访问 阿里存储对象oss 地址: https://oss.console.aliyun.com/overview 配置须知 通过Nginx 进行网络转 ...
- 【FTP】org.apache.commons.net.ftp.FTPClient实现复杂的上传下载,操作目录,处理编码...
和上一份简单 上传下载一样 来,任何的方法不懂的,http://commons.apache.org/proper/commons-net/apidocs/org/apache/commons/net ...
- springboot---fastDFS 简单文件上传/下载/删除
本来想简单的记录一下上传/下载,后来看着看着,发现这块的知识点太多.就记录下简单的操作,后面在补充 这里采用fastdfs分布式文件系统的形式来进行操作的(关于fastdfs的知识点有很多,这里就不赘 ...
- Struts2 文件上传,下载,删除
本文介绍了: 1.基于表单的文件上传 2.Struts 2 的文件下载 3.Struts2.文件上传 4.使用FileInputStream FileOutputStream文件流来上传 5.使用Fi ...
- 微信小程序文件云存储-上传下载删除功能
文件云存储 云存储提供高可用.高稳定.强安全的云端存储服务,支持任意数量和形式的非结构化数据存储,如视频和图片,并在控制台进行可视化管理.云存储包含以下功能: 存储管理:支持文件夹,方便文件归类.支持 ...
最新文章
- python三十五:pickle模块
- 微程序控制器原理(增量方式和断定方式结合法)
- nextcloud 中文乱码解决方案
- JAXB众所周知的秘密
- [react] react中调用setState会更新的生命周期有哪几个?
- 工具推荐-css3渐变生成工具
- 信息学奥赛一本通C++语言——1094:与7无关的数
- 5. Browser 对象 - Screen 对象
- 查询优化器内核剖析第六篇:谈谈Join的顺序问题,纠正江湖偏方
- 这一年,这些书:2020年读书笔记
- android网易云音乐api调用,网易云音乐常用API浅析 – Moonlib
- AppStore下载安装失败
- SWEBOK软件工程知识体系 - 7.软件工程管理
- Codeforces 1253B Silly Mistake
- python公开课模块_Course2-Python函数和模块
- 学习web的多个连接网站地址
- 淘宝直通车为什么要低价引流,低价引流的原理、低价引流的具体操作
- 国产游戏面临新一轮洗牌?虚幻4引擎免费开源
- ai技术与能源行业_最终AI能源效率的新方程式
- 灵狐系统不能找到数据库服务器,企业数据总线技术架构说明.docx
热门文章
- Spark ML机器学习
- Android实现XML解析技术
- 程序清单 8-8 exec函数实例,a.out是程序8-9产生的可执行程序
- Oracle 学习笔记(四) Oracle表空间和数据文件
- [ios] NSSet,NSMutableSet[zhuan]
- 第二个结对编程——UI设计
- asp.net的10个提升性能或扩展性的秘密(二)
- 分析arm linux启动打印信息
- mysql 5.5 双机热备_mysql 5.5双机热备份 master-master
- Ubuntu18.04安装markdown工具Typora