1、创建文件夹
public static void createFolder(String path){
File file = new File(path);
if( !file.exists() && !file.isDirectory() ){
System.out.println("文件夹不存在,创建。");
file.mkdirs();
}else{
System.out.println("文件夹存在");
}
}
2、创建文件
public static void createFile(String path){
File file = new File(path);
if( !file.exists() ){
try {
file.createNewFile();
System.out.println("创建文件");
} catch (IOException e) {
e.printStackTrace();
}
}else{
System.out.println("文件存在");
}
}
3、复制文件内容到另一文件
/**
* 复制文件内容
* @param s源文件
* @param t目的文件
* */
public static void fileChannelCopy(File s, File t) {
FileInputStream fi = null;
FileOutputStream fo = null;
FileChannel in = null;
FileChannel out = null;
try {
fi = new FileInputStream(s);
fo = new FileOutputStream(t);
in = fi.getChannel();// 得到对应的文件通道
out = fo.getChannel();// 得到对应的文件通道
in.transferTo(0, in.size(), out);// 连接两个通道,并且从in通道读取,然后写入out通道
} catch (IOException e) {
e.printStackTrace();
} finally {
try {
fi.close();
in.close();
fo.close();
out.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
4、压缩文件夹
/**
* 压缩文件夹
* @param zipFileName 压缩文件路径
* @param inputFile 待压缩file
* */
public static void zip(String zipFileName, File inputFile) throws Exception {
System.out.println("压缩中...");
ZipOutputStream out = new ZipOutputStream(new FileOutputStream(
zipFileName));
BufferedOutputStream bo = new BufferedOutputStream(out);
zip(out, inputFile, inputFile.getName(), bo);
bo.close();
out.close(); // 输出流关闭
System.out.println("压缩完成");
}
5、删除非空目录文件夹
public static boolean deleteDir(File dir) {
if (dir.isDirectory()) {
String[] children = dir.list();
for (int i=0; i<children.length; i++) {
boolean success = deleteDir(new File(dir, children[i]));
if (!success) {
return false;
}
}
}
return dir.delete();
}