Java实现文件的删除、拷贝和递归
作者:bea
实现文件的删除和拷贝,代码如下:
package com.viita;
import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
public class Dptest {
//删除制定文件夹的所有文件及根文件夹
public void deleteFile(String path) {
// TODO Auto-generated method stub
File f = new File(path);
if(f.isDirectory())
{
File[] file = f.listFiles();
for (File file2 : file) {
this.deleteFile(file2.toString());
file2.delete();
}
}else
{
f.delete();
}
f.delete();
}
//拷贝整个文件夹的方法
public void copyFiles(String path1, String path2) throws Exception {
// TODO Auto-generated method stub
File file = new File(path1);
if(file.isDirectory())
{
File f = new File(path2);
if(!f.exists()) f.mkdir();
File[] files = file.listFiles();
for (File file2 : files) {
//System.out.println(file2.toString()+"-----"+path2+"/"+file2.getName());
copyFiles(file2.toString(),path2+"/"+file2.getName());
}
}else
{
copy(path1,path2);
}
}
//拷贝单个文件的方法
public void copy(String path1,String path2) throws IOException {
// TODO Auto-generated method stub
DataInputStream in = new DataInputStream(
new BufferedInputStream(
new FileInputStream(path1)));
byte[] date = new byte[in.available()];
in.read(date);
DataOutputStream out = new DataOutputStream(
new BufferedOutputStream(
new FileOutputStream(path2)));
out.write(date);
in.close();
out.close();
}
public static void main(String[] args) throws Exception {
Dptest dp = new Dptest();
dp.deleteFile("c:/wmpub");
// dp.copyFiles("c:/新建文件夹", "c:/xiao");
}
}
有用 | 无用猜你喜欢
您可能感兴趣的文章:
- Java程序员面试题考考你知道多少
- 收集Java程序员值得去看的好书推荐
- 组合Java与SQL2005实现试题随即抽取
- Java web service开发实例:计数器
- Java web service 基础知识讲解
- 详解Linux系统下搭配Java开发环境
- Linux环境下三方法配置Java开发环境
- Java开发环境:选择Linux还是windows
- Java Applet编程实例讲解
- Java Applet实现图片动画编程
- Java编程技巧之Applet编程实例
- Java学习之学习Socket编程
- 总结Java与C语言的不同点
- 使用Java读取XML文件中的内容
- Java解析XML文档节点值代码
- 四种办法使用Java解析XML文件
- Java web开发字符编码总结
- Java web怎样实现异步编程
- 如何调度Java web开发中的任务