无聊写了一个实现文件-文件,文件夹-文件夹(包括源文件夹所有文件),文件-文件夹的拷贝的实用类.
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.io.Reader;
import java.io.Writer;
public class Util {
public static int buffer_size = 2048;
private static void doCopy(File src, File dst) {
if (src.isFile()) {
try {
copyFile(src, dst);
} catch (IOException e) {
e.printStackTrace();
}
} else {
File dir = copyDirectory(src, dst);
File[] files = src.listFiles();
if (files.length == 0) {
} else {
for (File file : files) {
doCopy(file, dir);
}
}
}
}
public static void copy(File src, File dst) throws IOException {
if (!src.exists() || !dst.exists())
throw new FileNotFoundException();
else if (src.isFile() && dst.isFile())
copy(new FileReader(src), new FileWriter(dst));
else if (src.isDirectory() && (!dst.isDirectory()))
throw new IllegalArgumentException("Destination should be a directory!");
else {
doCopy(src, dst);
}
}
private static void copyFile(File src, File dst) throws IOException {
File file = new File(dst, src.getName());
copy(new FileReader(src), new FileWriter(file));
}
private static File copyDirectory(File src, File dst) {
File file = new File(dst, src.getName());
file.mkdir();
return file;
}
private static int copy(Reader in, Writer out) throws IOException {
int byteCount = 0;
try {
int bytesReader = -1;
char[] buffer = new char[buffer_size];
while ((bytesReader = in.read(buffer)) != -1) {
out.write(buffer, 0, bytesReader);
byteCount += bytesReader;
}
out.flush();
} finally {
in.close();
out.close();
}
return byteCount;
}
}
分享到:
相关推荐
用java实现的文件和文件夹拷贝和转移
主要介绍了Java实现文件夹内所有文件拷贝到另一个文件夹,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
纯java实现,nio复制。其中文件夹复制同步使用channel实现,文件夹的交并集对比使用lamda实现,文件的同步比对逻辑通过比对文件的大小、日期、修改时间等实现
NULL 博文链接:https://hb-yym-929.iteye.com/blog/1062642
3、实现文件拷贝和文件夹拷贝(文件夹拷贝指深度拷贝,包括所有子目录和文件)。 4、实现指定文件的加密和解密。 5、实现指定文件和文件夹的压缩。 6、实现压缩文件的解压。 7、文件管理器具有图形界面。 建议使用...
3、HDFS的使用(读写、上传、下载、遍历、查找文件、整个目录拷贝、只拷贝文件、列出文件夹下文件、删除文件及目录、获取文件及文件夹属性等)-java 网址:...
java实现一个目录下全部文件复制到另一目录。过程主要是 循环第一个目录下的文件,然后输出流到另一个目录。
此文件支持对文件及文件夹结构的多种操作,其中包括: 读取文本文件内容 遍历指定路径下指定后缀的...删除指定文件夹下所有文件 复制单个文件 复制整个文件夹的内容 仅仅拷贝指定路径下的文件夹结构 移动文件 移动目录
3、实现文件拷贝和文件夹拷贝(文件夹拷贝指深度拷贝,包括所有子目录和文件)。 4、实现指定文件的加密和解密。 5、实现指定文件和文件夹的压缩。 6、实现压缩文件的解压。 7、文件管理器具有图形界面。
循环遍历文件夹,并且用I/O流读取该文件夹内的xml文件,并且输出到另一个文件夹下
3、实现文件拷贝和文件夹拷贝(文件夹拷贝指深度拷贝,包括所有子目录和文件)。 4、实现指定文件的加密和解密。 5、实现指定文件和文件夹的压缩。 6、实现压缩文件的解压。 7、文件管理器具有图形界面。
上传文件,上传导入文件到path文件夹下,判断图片大小是否超过要求,上传多张图片到服务器,上传图片到服务器,上传文件(在指定目录下创建年月日目录),上传导入文件到temp文件夹下,删除指定文件夹下所有文件,...
3、实现文件拷贝和文件夹拷贝(文件夹拷贝指深度拷贝,包括所有子目录和文件)。 4、实现指定文件的加密和解密。 5、实现多个文件的压缩和解压缩。 6、实现一个大文件的分割和合并。 7、实现把项目导出为可...
ava怎么实现找到特定文件夹下的所有目录下的一个文件,并拷贝到指定的目录
Java管理hdfs文件和文件夹的工具类,最近版本hadoop2.4。
使用java IO技术实现将多文件中的内容集中到一个文件上 只需输入一个文件夹的路径和目的路径即可完成文件拷贝复制 并且解决了中文乱码的问题s
2.实现文件的拷贝与粘贴功能。3.实现文本类文件(.txt, .java, .ini, .bat, )的预览功能(比如实现对前100行文本在某个小窗口中进行预览)。4.实现文件的重命名功能。5.实现对某个文件夹进行统计功能(如统计文件夹中...
实现一个文件夹的拷贝,复制完成之后删除原文件夹。
例如url=c:\文件夹1,而文件夹1中包含多个文件夹,现在程序要求遍历所有文件夹找出文件夹中的文件,然后原样保存到D盘的文件夹中去。原样是指只需文件夹中文件过去就可以,不用再还原文件夹。从键盘键入文件夹
java程序调用API 实现在ftp内文件夹和文件的拷贝,ftp服务器之间的文件和文件夹的拷贝 欢迎来群:41229007 QQ:119346711讨论