我是靠谱客的博主 执着母鸡,这篇文章主要介绍IO流_复制多级文件夹案例,现在分享给大家,希望可以做个参考。

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
package cn.itcast_05; import java.io.BufferedInputStream; import java.io.BufferedOutputStream; import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; /* * 需求:复制多极文件夹 * * 数据源:G:Javademos * 目的地:G:\ * * 分析: * A:封装数据源File * B:封装目的地File * C:判断该File是文件还是文件夹 * a:是文件夹 * 就在目的地目录下创建该文件夹 * 获取该File对象下的所有文件或者文件夹File对象 * 遍历得到每一个File对象 * 回到C * b:是文件 * 就复制(字节流) */ public class copyFolderDemo { public static void main(String[] args) throws IOException { // 封装数据源 File srcFolder = new File("D:\a\demos"); // 封装目的地 File destFolder = new File("D:\"); // 复制文件夹功能 copyFolder(srcFolder, destFolder); } /** * 复制文件夹方法 * * @param srcFolder * 数据源 * @param destFolder * 目的地 */ public static void copyFolder(File srcFolder, File destFolder) throws IOException { // 判断该File是文件还是文件夹 if (srcFolder.isDirectory()) { // 文件夹 File newFolder = new File(destFolder, srcFolder.getName()); newFolder.mkdir(); // 获取该File对象下的所有文件或者文件夹File对象 File[] fileArray = srcFolder.listFiles(); // 遍历得到每一个File对象 for (File file : fileArray) { copyFolder(file, newFolder); } } else { // 文件 File newFile = new File(destFolder, srcFolder.getName());// G:d.txt // 复制文件功能 copyFile(srcFolder, newFile); } } /** * 复制文件方法 * * @param srcFolder * 数据源 * @param newFile * 目的地 */ public static void copyFile(File srcFolder, File newFile) throws IOException { // 封装数据源 BufferedInputStream bis = new BufferedInputStream(new FileInputStream( srcFolder)); // 封装目的地 BufferedOutputStream bos = new BufferedOutputStream( new FileOutputStream(newFile)); // 读写数据 byte[] bys = new byte[1024]; int len = 0; while ((len = bis.read(bys)) != -1) { bos.write(bys, 0, len); bos.flush(); } // 释放资源 bos.close(); bis.close(); } }

最后

以上就是执着母鸡最近收集整理的关于IO流_复制多级文件夹案例的全部内容,更多相关IO流_复制多级文件夹案例内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(74)

评论列表共有 0 条评论

立即
投稿
返回
顶部