File类基本操作
java.io.File类用于表示文件(目录)
File类只用于表示文件(目录)的信息(名称、大小等),不能用于文件内容的访问
public class FileDemo { public static void main(String[] args) { File file = new File("S:\\JavaIO\\IODemo"); //是否存在 System.out.println(file.exists()); if(!file.exists()) { file.mkdirs(); } //是否是一个目录 System.out.println(file.isDirectory()); //是否是一个文件 System.out.println(file.isFile()); File file2 = new File("S:\\JavaIO\\日记1.txt"); if(!file2.exists()) { try { //创建文件 file.createNewFile(); } catch (IOException e) { // TODO 自动生成的 catch 块 e.printStackTrace(); } } else { file2.delete(); } System.out.println(file); System.out.println(file.getAbsolutePath()); System.out.println(file.getName()); System.out.println(file.getParent()); System.out.println(file.getParentFile().getAbsolutePath()); } }
列出File的一些常用操作比如:遍历
import java.io.File; import java.io.IOException; //列出File的一些常用操作比如过滤、遍历等操作 public class FileUtils { /** * 列出指定目录下(包括其子目录)的所有文件 * * @param dir * @throws IOException */ public static void listDirectory(File dir) throws IOException { if (!dir.exists()) { throw new IllegalArgumentException("目录:" + dir + "不存在"); } if (!dir.isDirectory()) { throw new IllegalArgumentException(dir + "不是目录"); } // list()方法用于列出当前目录下的子目录和文件的名字 /* * String[] files = dir.list(); for (String string : files) { * System.out.println(dir+"\\"+string); } */ //listfiles()方法返回的是file对象 File[] files = dir.listFiles(); if (files != null && files.length > 0) { for (File file : files) { if (file.isDirectory()) { System.out.println("----------"+file); listDirectory(file); } else { System.out.println(file); } } } } }