1、获取文件目录大小
package IOTest_12;
import java.io.File;
import org.apache.commons.io.FileUtils;
public class CommonsIOTest_1 {
public static void main(String[] args) {
long len = FileUtils.sizeOf(new File("测试.mp4"));
System.out.println(len);
len = FileUtils.sizeOf(new File("F:/eclipse-workspace/Java300集_8"));
System.out.println(len);
}
}
2、列出子孙级目录
package IOTest_12;
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;
public class CommonsIOTest_2 {
public static void main(String[] args) {
Collection<File> files = FileUtils.listFiles(
new File("F:\\eclipse-workspace\\Java300集_8"),
EmptyFileFilter.NOT_EMPTY, null);
for (File file : files) {
System.out.println(file.getAbsolutePath());
}
System.out.println("------------------");
files = FileUtils.listFiles(
new File("F:\\eclipse-workspace\\Java300集_8"),
EmptyFileFilter.NOT_EMPTY, DirectoryFileFilter.INSTANCE);
for (File file : files) {
System.out.println(file.getAbsolutePath());
}
System.out.println("------------------");
files = FileUtils.listFiles(
new File("F:\\eclipse-workspace\\Java300集_8"),
new SuffixFileFilter("class"), DirectoryFileFilter.INSTANCE);
for (File file : files) {
System.out.println(file.getAbsolutePath());
}
System.out.println("------------------");
files = FileUtils.listFiles(
new File("F:\\eclipse-workspace\\Java300集_8"),
new SuffixFileFilter("class"), DirectoryFileFilter.INSTANCE);
for (File file : files) {
System.out.println(file.getAbsolutePath());
}
System.out.println("------------------");
files = FileUtils.listFiles(
new File("F:\\eclipse-workspace\\Java300集_8"),
FileFilterUtils.or(new SuffixFileFilter("class"),new SuffixFileFilter("java")), DirectoryFileFilter.INSTANCE);
for (File file : files) {
System.out.println(file.getAbsolutePath());
}
}
}
3、读取文件
package IOTest_12;
import java.io.File;
import java.io.IOException;
import java.util.List;
import javax.sound.sampled.LineListener;
import org.apache.commons.io.FileUtils;
import org.apache.commons.io.LineIterator;
public class CommonsIOTest_3 {
public static void main(String[] args) throws IOException {
String msg = FileUtils.readFileToString(new File("abc.txt"),"GBK");
System.out.println(msg);
byte[] datas = FileUtils.readFileToByteArray(new File("abc.txt"));
System.out.println(datas.length);
List<String> msgs = FileUtils.readLines(new File("abc.txt"),"GBK");
for (String string : msgs) {
System.out.println(string);
}
System.out.println("----------");
LineIterator it = FileUtils.lineIterator(new File("abc.txt"),"GBK");
while(it.hasNext()) {
System.out.println(it.nextLine());
}
}
}
4、写出文件
package IOTest_12;
import java.io.File;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
import javax.sound.sampled.LineListener;
import org.apache.commons.io.FileUtils;
public class CommonsIOTest_4 {
public static void main(String[] args) throws IOException {
FileUtils.write(new File("CIO.txt"), "测试写出文件\r\n","GBK");
FileUtils.writeStringToFile(new File("CIO.txt"), "测试写出文件\r\n","GBK",true);
FileUtils.writeByteArrayToFile(new File("CIO.txt"), "测试写出文件\r\n".getBytes("GBK"),true);
List<String> datas = new ArrayList<String>();
datas.add("测试1");
datas.add("测试2");
datas.add("测试3");
FileUtils.writeLines(new File("CIO.txt"), datas,"...",true);
}
}
5、文件拷贝
package IOTest_12;
import java.io.File;
import java.io.IOException;
import java.net.URL;
import java.util.ArrayList;
import java.util.List;
import javax.sound.sampled.LineListener;
import org.apache.commons.io.FileUtils;
import org.apache.commons.io.IOUtils;
public class CommonsIOTest_5 {
public static void main(String[] args) throws IOException {
FileUtils.copyFile(new File("情人.mp4"),new File("qr.mp4"));
FileUtils.copyFileToDirectory(new File("img.png"), new File("lib"));
FileUtils.copyDirectory(new File("lib"), new File("mkdir/lib"));
String url = "https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1551899826700&di=6a078c018ed37648f5c0d1b171560c66&imgtype=0&src=http%3A%2F%2Fimg1.xiazaizhijia.com%2Fwalls%2F20151109%2F1024x768_ee5b2db1b4789b4.jpg";
FileUtils.copyURLToFile(new URL(url), new File("aaa.jpg"));
String datas = IOUtils.toString(
new URL("https://www.yanghuisen.cn"), "UTF-8");
System.out.println(datas);
}
}