Java中,File类是处理文件和目录的主要类之一,它提供了一些实用的方法来操作文件和目录,例如创建、删除、重命名、迭代目录等。在本文中,我们将从多个方面深入了解File类,让你更好的使用它。
一、创建和删除文件
1、创建一个新文件
File file = new File("path/to/your/file.txt"); boolean success = file.createNewFile(); if (success) { System.out.println("File created successfully!"); }
2、删除一个文件
File file = new File("path/to/your/file.txt"); boolean success = file.delete(); if (success) { System.out.println("File deleted successfully!"); }
二、读取和写入文件
1、读取文件内容
File file = new File("path/to/your/file.txt"); try (Scanner scanner = new Scanner(file)) { while(scanner.hasNextLine()) { String line = scanner.nextLine(); System.out.println(line); } } catch (IOException e) { e.printStackTrace(); }
2、写入文件内容
File file = new File("path/to/your/file.txt"); try (BufferedWriter writer = new BufferedWriter(new FileWriter(file))) { writer.write("Hello, World!"); } catch (IOException e) { e.printStackTrace(); }
三、目录操作
1、遍历目录
File dir = new File("path/to/your/directory"); File[] files = dir.listFiles(); for (File file : files) { if (file.isDirectory()) { System.out.println("Directory: " + file.getAbsolutePath()); } else { System.out.println("File: " + file.getAbsolutePath()); } }
2、创建目录和删除目录
File dir = new File("path/to/your/directory"); boolean success = dir.mkdir(); // 创建目录 // 或者使用 dir.mkdirs() 创建多级目录 if (success) { System.out.println("Directory created successfully!"); } boolean success = dir.delete(); // 删除目录 if (success) { System.out.println("Directory deleted successfully!"); }
四、其他操作
1、判断文件是否存在
File file = new File("path/to/your/file.txt"); boolean exists = file.exists(); if (exists) { System.out.println("File exists!"); }
2、获取文件的大小和最后修改时间
File file = new File("path/to/your/file.txt"); long size = file.length(); System.out.println("File size: " + size + " bytes"); long lastModified = file.lastModified(); System.out.println("Last modified: " + new Date(lastModified));
3、重命名文件
File file = new File("path/to/your/file.txt"); boolean success = file.renameTo(new File("path/to/your/newfile.txt")); if (success) { System.out.println("File renamed successfully!"); }
以上是File类的常见操作,我们可以根据具体需求结合实际场景进行使用。