File类
对文件的操作:创建文件/文件夹,过滤,可操作权限
IO各种流的操作,调用人家系统的定义的各种流类时,系统类抛出异常所以需要捕获处理异常,也可以再次向外抛出异常,给其他调用的方法处理,如果没有处理的话,继续向外抛出。
下一节,写得是抛出异常。
1.创建新文件
2.创建目录
3.输出目录下指定后缀名的文件
4.查看文件的可操作权限
package com.judy.demo;
import java.io.File;
import java.io.IOException;
public class FileUtils {
/**
*
* @param filename 文件名
*/
public void createNewFile(String filename) {
File file = new File(filename);
if (!file.exists()) {
try {
file.createNewFile();
} catch (IOException e) {
e.printStackTrace();
}
}
}
/**
*
* @param folderName 文件夹名
*/
public void createNewFolder(String folderName) {
File file = new File(folderName);
if (file.exists()) {
file.delete();
}
boolean flag = file.mkdirs();
if (flag) {
System.out.println("successful");
} else {
System.out.println("not successful");
}
}
/** 输出文件夹中所有的 ***.java 文件
* @param filename 文件夹名(只能筛选当前目录下的文件)
* C:\Users\asus-pc\IdeaProjects\Test\src\com\judy\demo
*/
public void filterAllFileByName(String filename) {
File file = new File(filename);
if (file.isDirectory()) {
File[] files = file.listFiles(new MyFilter(".java"));
for (File file1 : files) {
System.out.println(file1.getName());
}
}
}
public void filterAllFileByNameFilter(String filename){
File file = new File(filename);
if (file.isDirectory()){
File[] files = file.listFiles(new MyFilter1("myfile",".doc"));
for (File file1:files){
System.out.println("--------------->>"+file1.getName());
System.out.println("------>"+file1.getAbsolutePath());
}
}
}
/**
* 文件可操作权限
* @param filename
*/
public void canOpreate(String filename) {
File file = new File(filename);
System.out.println(file.canRead());
System.out.println(file.canWrite());
System.out.println(file.canExecute());
}
/*public void splitFileContent(String filename){
File file = new File(filename);
}*/
}
过滤器:
package com.judy.demo;
import java.io.File;
import java.io.FileFilter;
public class MyFilter implements FileFil