复制文件夹:
public static boolean copyFolder(String srcFolderFullPath, String destFolderFullPath) {
try {
(new File(destFolderFullPath)).mkdirs(); // 如果文件夹不存在 则建立新文件夹
File file = new File(srcFolderFullPath);
String[] files = file.list();
File temp = null;
for (int i = 0; i < files.length; i++) {
if (srcFolderFullPath.endsWith(File.separator)) {
temp = new File(srcFolderFullPath + files[i]);
} else {
temp = new File(srcFolderFullPath + File.separator + files[i]);
}
if (temp.isFile()) {
FileInputStream input = new FileInputStream(temp);
copyFile(input, destFolderFullPath + "/" + (temp.getName()).toString());
}
if (temp.isDirectory()) {// 如果是子文件夹
copyFolder(srcFolderFullPath + "/" + files[i], destFolderFullPath + "/" + files[i]);
}
}
} catch (Exception e) {
e.printStackTrace();
return false;
}
return true;
}
复制文件:
public static boolean copyFile(InputStream ins, String destFileFullPath) {
FileOutputStream fos = null;
try {
File file = new File(destFileFullPath);
fos = new FileOutputStream(file);
byte[] buffer = new byte[8192];
int count = 0;
while ((count = ins.read(buffer)) > 0) {
fos.write(buffer, 0, count);
}
return true;
} catch (Exception e) {
e.printStackTrace();
return false;
} finally {
try {
fos.close();
ins.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
删除文件:
public static void deleteFile(String targetFileFullPath) {
File file = new File(targetFileFullPath);
file.delete();
}
删除文件夹:
public static void deleteFolder(String targetFolderFullPath) {
File file = new File(targetFolderFullPath);
if (!file.exists()) {
return;
}
String[] files = file.list();
File temp = null;
for (int i = 0; i < files.length; i++) {
if (targetFolderFullPath.endsWith(File.separator)) {
temp = new File(targetFolderFullPath + files[i]);
} else {
temp = new File(targetFolderFullPath + File.separator + files[i]);
}
if (temp.isFile()) {
deleteFile(targetFolderFullPath + "/" + (temp.getName()).toString());
}
if (temp.isDirectory()) {// 如果是子文件夹
deleteFolder(targetFolderFullPath + "/" + files[i]);
}
}
}