基于Java的一个简单的文件上传下载功能

最近在公司给客户端做接口,有一个图片上传和文件下载的功能,本来想用Struts来做文件上传下载,但是看了下公司好像没有这个配置,然后看了下同事的代码,才发现原来Apache也可以简单的实现文件上传下载。
首先引入commons-io-2.2.jar
FileUtils为我们提供了很多对文件的操作的方法,比如上传整个文件夹的文件、上传单个文件等
然后请看代码:
public static void uploadFile(String targetDirectory,String targetFileName,File file){
try {
File target = new File(targetDirectory, targetFileName);
/**
* 上传整个文件夹文件
* */
//FileUtils.copyDirectory(file,target);
/**
* 上传单个文件
* */
FileUtils.copyFile(file, target);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}


到这为止 一个简单的文件上传就完成了。接下来看看下载文件:
public static void downloadUrl(String httpurl,String targetDirectory){
try {
FileUtils.copyURLToFile(new URL(httpurl),
new File(targetDirectory));
} catch (MalformedURLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}


然后来一个man方法测试是否正确:

public static void main(String[] args) {
//上传
File file = new File("D:/tp/xiazai.png");
FileUtil.uploadFile("D:/Test/", "uplod2016.png",file);

//下载
FileUtil.downloadUrl("http://img5.pcpop.com/ArticleImages/500x375/1/1613/001613973.jpg","D:/Test/jams.png");
}

上传成功:

下载成功:


完美。

献上源码,望与各位兄弟一起努力进步。
见附件

猜你喜欢

转载自hellomyword.iteye.com/blog/2339816