Java IO流 File类的常用API实例
•File类
1.只用于表示文件(目录)的信息(名称、大小等),不能用于文件内容的访问。
package cn.test; import java.io.File; import java.io.IOException; public class Demo16 { public static void main(String[] args) { File file = new File("F:\\javaio"); //文件(目录)是否存在 if(!file.exists()) { //创建目录 file.mkdir();//file.mkdirs(); } else { //文件(目录)删除 file.delete(); } //是否是目录 如果是目录返回true,如果不是目录或目录不存在返回false System.out.println(file.isDirectory()); //是否是文件 System.out.println(file.isFile()); //File file2 = new File("F:\\java\\日记1.txt"); File file2 = new File("F:\\javaio", "日记2.txt"); if (!file2.exists()) { try { //创建文件 file2.createNewFile(); } catch (IOException e) { e.printStackTrace(); } } else { file2.delete(); } System.out.println(file); System.out.println(file.getAbsolutePath());//返回绝对路径 System.out.println(file.getName());//目录名称 System.out.println(file2.getName());//文件名称 System.out.println(file.getParent());//父级目录的路径 System.out.println(file.getParent());//父级目录的路径 } }
2.遍历目录
package com.test.io; import java.io.File; import java.io.IOException; /** * File类的常用操作 * @author Administrator * */ 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 + "不是目录"); } /* String[] filenames = dir.list();//返回的是字符串数组,列出当前目录下的子目录和文件(不包含子目录下的内容) for (String string : filenames) { System.out.println(dir + "\\" +string); } */ //如果要遍历子目录下的内容,就需要构造File对象做递归操作 File[] files = dir.listFiles();//返回的是直接子目录(文件)的抽象 if (files != null && files.length > 0) { for (File file : files) { if (file.isDirectory()) { //递归 listDirectory(file); } else { System.out.println(file); } } } } }
以上所述是小编给大家介绍的Java IO流 File类的常用API实例,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!
赞 (0)