【java】javaSE知识梳理-IO流
在java.io中存在,作用于文件传输和访问。

File类:处理文件的基类
package javaSE; import java.io.File; import java.io.FilenameFilter; import java.io.IOException; public class FileStreamTest { public static void main(String[] args) { try { fileStream(); } catch (IOException e) { e.printStackTrace(); } } public static void fileStream() throws IOException { String absolutePathname = "D:\\用户文件\\桌面\\java\\"; String canonicalPathname = "..\\java\\"; String fileName = "new1.txt"; File file1 = new File(absolutePathname + fileName); File file2 = new File(canonicalPathname + fileName); File file3 = new File(absolutePathname); /** * 增 * */ file2.createNewFile(); // 文件尚不存在时,创建一个新的 file1.createTempFile("tempFile", ".txt"); // 默认临时文件目录中创建一个新的文件,默认位置C:\Users\CHINA-PICC\AppData\Local\Temp file2.createTempFile("tempfile1", "doc", file3); // 指定目录中创建一个新的文件 //查询目录是否存在,若在删除,不在创建 File file4 = new File("D:\\用户文件\\桌面\\java\\temp\\core\\"); if(file4.exists()){ System.out.println("目录存在" + file4.getAbsolutePath()); file4.deleteOnExit(); // 删除单层空目录 }else{ // file4.mkdir(); // 创建固定目录--单层目录 file4.mkdirs(); // 创建固定目录--多层目录 System.out.println("目录不存在,创建新目录:" + file4.getAbsolutePath()); } /** * 删 * delete PK deleteOnExit ??? * */ file1.delete(); // 删除单层空目录 file1.deleteOnExit(); // 运行终止时删除指定文件-单层 /** * 查 * getTotalSpace ?? * */ System.out.println(file1.exists()); // 存在? System.out.println(file1.canRead()); // 可读? System.out.println(file1.canWrite()); // 可修改? System.out.println(file1.canExecute()); // 可执行文件? System.out.println(file2.isFile()); // 是否为文件/目录路径? System.out.println(file2.isDirectory()); // 是否为目录路径? System.out.println(file2.isAbsolute()); // 是否为绝对? System.out.println(file2.isHidden()); // 是否为隐藏? System.out.println(file1.equals(file2)); // 两个文件/目录路径是否相同? System.out.println(file2.lastModified()); // 上次修改的时间 //路径 System.out.println(file2.getPath()); // 相对路径 :..\java\new1.txt System.out.println(file2.getCanonicalPath()); // 相对路径--String类型 :D:\workspace\java\new1.txt System.out.println(file2.getAbsolutePath()); // 绝对路径--String类型 :D:\workspace\javaSE\..\java\new1.txt System.out.println(file2.getCanonicalFile()); // 相对路径--File类型 System.out.println(file2.getAbsoluteFile()); // 绝对路径--File类型 System.out.println(file2.getParent()); // 父目录--String类型 System.out.println(file2.getParentFile()); // 父目录--File类型 System.out.println(file2.getTotalSpace()); // 分区 named的大小 // 遍历目录 // String[] lists = file3.list(); // 获取对应路径下的文件和目录--String类型 // for(String list:lists){ // System.out.println(list); // } // // String[] fileLists = file3.list(new FilenameFilter(){ // 获取对应路径下的满足条件的文件和目录--String类型 // @Override // public boolean accept(File dir, String name) { // //允许的txt,docx的文件类型 // return name.endsWith(".txt") || name.endsWith(".docx"); // } // }); // for(String fileList:fileLists){ // System.out.println(fileList); // } File[] lists = file3.listFiles(); // 获取对应路径下的文件和目录--File类型 for (File list : lists) { System.out.println(list); } File[] fileLists = file3.listFiles(new FilenameFilter() { // 获取对应路径下的满足条件的文件和目录--File类型 @Override public boolean accept(File dir, String name) { return name.endsWith(".txt") || name.endsWith(".docx"); } }); for (File fileList : fileLists) { System.out.println(fileList); } } }

浙公网安备 33010602011771号