CIO 工具类
获取文件大小
package com.sxt.commence;
import java.io.File;
import org.apache.commons.io.FileUtils;
/*
* 文件大小
*
*/
public class CIO_Size {
public static void main(String[] args) {
//文件夹大小
long len = FileUtils.sizeOf(new File("D:\\Java\\eclipse\\ide\\IO_Study02"));
System.out.println(len);
//文件大小
len =FileUtils.sizeOf(new File("D:\\Java\\eclipse\\ide\\IO_Study02\\src\\com\\sxt\\commence\\CIO_test.java"));
System.out.println(len);
}
}
获取目录
package com.sxt.commence;
import java.io.File;
import java.util.Collection;
import org.apache.commons.io.FileUtils;
import org.apache.commons.io.filefilter.DirectoryFileFilter;
import org.apache.commons.io.filefilter.EmptyFileFilter;
import org.apache.commons.io.filefilter.FileFilterUtils;
import org.apache.commons.io.filefilter.SuffixFileFilter;
/*列出子孙集
* 返回值类型为容器 FileUtils.listFiles(文件夹名称, 过滤, 子孙集还是一层)
*/
public class CIO_Sons {
public static void main(String[] args) {
/*Collection<File> file = FileUtils.listFiles(new File("D:\\Java\\eclipse\\ide\\IO_Study02"), EmptyFileFilter.NOT_EMPTY, null);//一层
for(File s:file) {
System.out.println(s.getName());
}
System.out.println("-----------");
Collection<File> files = FileUtils.listFiles(new File("D:\\Java\\eclipse\\ide\\IO_Study02"), EmptyFileFilter.NOT_EMPTY, DirectoryFileFilter.INSTANCE);//子孙集
for(File s:files) {
System.out.println(s.getName());
}
*/
//文件过滤
Collection<File> files = FileUtils.listFiles(new File("D:\\Java\\eclipse\\ide\\IO_Study02"),
FileFilterUtils.or(new SuffixFileFilter("java"),new SuffixFileFilter("class"),EmptyFileFilter.EMPTY), //也有and
DirectoryFileFilter.INSTANCE);//子孙集
for(File s:files) {
System.out.println(s.getName());
}
}
}
读写文件
package com.sxt.commence;
import java.io.File;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
import org.apache.commons.io.FileUtils;
public class CIO_readwrite {
public static void main(String[] args) throws IOException {
//读取文件
String msg= FileUtils.readFileToString(new File("tests"),"GBK");
System.out.println(msg);
byte [] datas=FileUtils.readFileToByteArray(new File("tests"));
System.out.println(datas.length);
//逐行读取
List <String> msgs= FileUtils.readLines(new File("tests"),"GBK");
for(String str:msgs) {
System.out.println(str);
}
//写出内容
FileUtils.write(new File("tests"), "rgailwegh","GBK", true);
FileUtils.writeByteArrayToFile(new File("tests"), "rgailwegh".getBytes("GBK"), true);
//写出列表
List<String> data =new ArrayList<String>();
data.add("zt");
data.add("afag");
FileUtils.writeLines(new File("tests"), data ,"间隔符",true);
}
}
拷贝
package com.sxt.commence;
import java.io.File;
import java.io.IOException;
import org.apache.commons.io.FileUtils;
public class CIO_Copy {
public static void main(String[] args) throws IOException {
//复制文件
FileUtils.copyFile(new File("tests"),
new File("test2"));
//复制目录到目录
FileUtils.copyDirectoryToDirectory(sourceDir, destinationDir);
//复制文件到目录
FileUtils.copyFileToDirectory(new File("lib"), new File("lib2"));
//复制目录
FileUtils.copyDirectory(srcDir, destDir);
// 拷贝URL 内容
FileUtils.copyURLToFile(arg0, arg1);
}
}