package p333;
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;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.List;
public class PrintFileName {
private static int copy_ok_count, copy_fail_count;
private static String srcPathPrefix = "E:/rename", desPathPrefix = "E:/renameok/";
private static String currentName;
private static int printdotcnt;
/**
* 复制整个文件夹内容
*
* @param newPath
* String 复制后路径 如:f:/fqf/ff
* @param oldPath
* String 原文件路径 如:c:/fqf
* @return boolean
*/
public static void copyFolder(String newPath, String oldPath) {
try {
(new File(newPath)).mkdirs(); // 如果文件夹不存在 则建立新文件夹
File a = new File(oldPath);
String[] file = a.list();
File temp = null;
for (int i = 0; i < file.length; i++) {
if (oldPath.endsWith(File.separator)) {
temp = new File(oldPath + file[i]);
} else {
temp = new File(oldPath + File.separator + file[i]);
}
if (temp.isFile()) {
//过滤一些文件
if ( temp.toString().endsWith(".rar") == true || temp.toString().endsWith(".tmp") == true) {
continue;
}
DataInputStream dis = new DataInputStream(new BufferedInputStream(new FileInputStream(temp)));
DataOutputStream dos = new DataOutputStream(new BufferedOutputStream(
new FileOutputStream(newPath + "/" + (temp.getName()).toString())));
byte b[] = new byte[4096];
int length;
while ((length = dis.read(b)) != -1) {
dos.write(b, 0, length);
}
dos.flush();
dos.close();
dis.close();
System.out.print(".");
printdotcnt++;
if (printdotcnt >= 80) {
printdotcnt = 0;
System.out.println();
}
} else if (temp.isDirectory()) {// 如果是子文件夹
copyFolder(newPath + "/" + file[i], oldPath + "/" + file[i]);
}
}
} catch (Exception e) {
System.out.println("复制整个文件夹内容操作出错");
e.printStackTrace();
}
}
public static void main(String[] args) {
String startTime;
SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");// 设置日期格式
File file = new File(srcPathPrefix);
copy_ok_count = 0;
copy_fail_count = 0;
printdotcnt = 0;
startTime = "\n开始时间:" + df.format(new Date());
// Date()为获取当前系统时间
copyFolder(desPathPrefix, srcPathPrefix);
System.out.println(startTime);
System.out.println("结束时间:" + df.format(new Date()));
System.out.println("\nall file copy over!");
}
}
java代码拷贝文件
猜你喜欢
转载自blog.csdn.net/yunjie167/article/details/78094799
今日推荐
周排行