1.代码要求
通过字节流拷贝一个文件夹下的所有文件到另一个文件夹中
注:原文件夹下的子文件夹里面的内容不会被拷贝
2.代码实现
package com.lut.ui;
//【字节流】拷贝一个文件夹下的所有文件到另一个文件夹中
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.InputStream;
import java.io.OutputStream;
public class FileCopy {
public static void main(String[] args) {
File file = new File("C:\\Users\\DELL\\Desktop\\12"); // 原文件路径
File[] files = file.listFiles();
// listFiles()方法是返回某个目录下所有文件和目录的绝对路径,返回的是File数组
for (File f : files) {
if (f.isFile()) { //判断只有是文件时才进行拷贝
try {
File newFile = new File("C:\\Users\\DELL\\Desktop\\23\\" + f.getName());// 要拷贝到的的文件路径
InputStream in = new FileInputStream(f);
OutputStream out = new FileOutputStream(newFile);
byte[] buffer = new byte[1024]; // 定义一个大小为1024字的缓冲区
int len;
while ((len = in.read(buffer)) != -1) { // 当缓冲区没有字符时返回值是-1
out.write(buffer, 0, len);
}
out.flush();
out.close();
in.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
System.out.println("文件拷贝完毕!");
}
}