77、java的IO操作-File
2017-10-12 10:21
369 查看
一、File类的概述 1、我们要想实现IO的操作,就必须知道硬盘上文件的表现形式。 而Java就提供了一个类File供我们使用。 2、File:文件和目录(文件夹)路径名的抽象表示形式 二、File类的构造方法 1、File(String pathname): 根据一个路径得到File对象 2、File(String parent, String child): 根据一个目录和一个子文件/目录得到File对象 3、File(File parent, String child): 根据一个父File对象和一个子文件/目录得到File对象 public class FileDemo { public static void main(String[] args) { // File(String pathname):根据一个路径得到File对象 // 把e:\\demo\\a.txt封装成一个File对象 File file = new File("E:\\demo\\a.txt"); // File(String parent, String child):根据一个目录和一个子文件/目录得到File对象 File file2 = new File("E:\\demo", "a.txt"); // File(File parent, String child):根据一个父File对象和一个子文件/目录得到File对象 File file3 = new File("e:\\demo"); File file4 = new File(file3, "a.txt"); // 以上三种方式其实效果一样 } } 三、File类的成员方法之创建功能 1、public boolean createNewFile(): 创建文件 如果存在这样的文件,就不创建了,如果父目录不存在,会抛出异常 2、public boolean mkdir(): 创建文件夹 如果存在这样的文件夹,就不创建了,如果父目录不存在,返回false创建不成功 3、public boolean mkdirs(): 创建文件夹,如果父文件夹不存在,会帮你创建出来,注意只能创建文件夹 public class FileDemo { public static void main(String[] args) throws IOException { // 需求:我要在e盘目录下创建一个文件夹demo File file = new File("e:\\demo"); System.out.println("mkdir:" + file.mkdir()); // 需求:我要在e盘目录demo下创建一个文件a.txt File file2 = new File("e:\\demo\\a.txt"); System.out.println("createNewFile:" + file2.createNewFile()); // 需求:我要在e盘目录test下创建一个文件b.txt // Exception in thread "main" java.io.IOException: 系统找不到指定的路径。 // 注意:要想在某个目录下创建内容,该目录首先必须存在。 // File file3 = new File("e:\\test\\b.txt"); // System.out.println("createNewFile:" + file3.createNewFile()); // 需求:我要在e盘目录test下创建aaa目录 // File file4 = new File("e:\\test\\aaa"); // System.out.println("mkdir:" + file4.mkdir()); // File file5 = new File("e:\\test"); // File file6 = new File("e:\\test\\aaa"); // System.out.println("mkdir:" + file5.mkdir()); // System.out.println("mkdir:" + file6.mkdir()); // 其实我们有更简单的方法 File file7 = new File("e:\\aaa\\bbb\\ccc\\ddd"); System.out.println("mkdirs:" + file7.mkdirs()); // 看下面的这个东西: File file8 = new File("e:\\liuyi\\a.txt"); System.out.println("mkdirs:" + file8.mkdirs()); } } 四、File类的成员方法之删除功能 public boolean delete() 只能删除单个文件或者空的文件夹 注意: 1、如果你创建文件或者文件夹忘了写盘符路径,那么,默认在项目路径下。 2、要删除一个文件夹,请注意该文件夹内不能包含文件或者文件夹 3、Java中的删除不走回收站。 public class FileDemo { public static void main(String[] args) throws IOException { // 创建文件 // File file = new File("e:\\a.txt"); // System.out.println("createNewFile:" + file.createNewFile()); // 我不小心写成这个样子了 File file = new File("a.txt"); System.out.println("createNewFile:" + file.createNewFile()); // 继续玩几个 File file2 = new File("aaa\\bbb\\ccc"); System.out.println("mkdirs:" + file2.mkdirs()); // 删除功能:我要删除a.txt这个文件 File file3 = new File("a.txt"); System.out.println("delete:" + file3.delete()); // 删除功能:我要删除ccc这个文件夹 File file4 = new File("aaa\\bbb\\ccc"); System.out.println("delete:" + file4.delete()); // 删除功能:我要删除aaa文件夹 // File file5 = new File("aaa"); // System.out.println("delete:" + file5.delete()); File file6 = new File("aaa\\bbb"); File file7 = new File("aaa"); System.out.println("delete:" + file6.delete()); System.out.println("delete:" + file7.delete()); } } 五、File类的成员方法之重命名功能 public boolean renameTo(File dest) 注意: 1、如果路径名相同,就是改名。 2、如果路径名不同,就是改名并剪切。 路径以盘符开始:绝对路径 c:\\a.txt 路径不以盘符开始:相对路径 a.txt public class FileDemo { public static void main(String[] args) { // 创建一个文件对象 // File file = new File("林青霞.jpg"); // // 需求:我要修改这个文件的名称为"东方不败.jpg" // File newFile = new File("东方不败.jpg"); // System.out.println("renameTo:" + file.renameTo(newFile)); File file2 = new File("东方不败.jpg"); File newFile2 = new File("e:\\林青霞.jpg"); System.out.println("renameTo:" + file2.renameTo(newFile2)); } } 六、File类的成员方法之判断功能 1、public boolean isDirectory(): 判断是否是目录 2、 public boolean isFile(): 判断是否是文件 3、 public boolean exists(): 判断是否存在 4、public boolean canRead(): 判断是否可读 5、public boolean canWrite(): 判断是否可写 6、public boolean isHidden(): 判断是否隐藏 public class FileDemo { public static void main(String[] args) { // 创建文件对象 File file = new File("a.txt"); System.out.println("isDirectory:" + file.isDirectory());// false System.out.println("isFile:" + file.isFile());// true System.out.println("exists:" + file.exists());// true System.out.println("canRead:" + file.canRead());// true System.out.println("canWrite:" + file.canWrite());// true System.out.println("isHidden:" + file.isHidden());// false } } 七、File类的成员方法之基本获取功能 1、public String getAbsolutePath(): 获取绝对路径 2、public String getPath(): 获取相对路径 3、public String getName(): 获取名称 4、public long length(): 获取长度。字节数 5、public long lastModified(): 获取最后一次的修改时间,毫秒值 public class FileDemo { public static void main(String[] args) { // 创建文件对象 File file = new File("demo\\test.txt"); System.out.println("getAbsolutePath:" + file.getAbsolutePath()); // getAbsolutePath:/Volumes/E/myeclipse_workspace/day19_File/demo\test.txt System.out.println("getPath:" + file.getPath()); // getPath:demo\test.txt System.out.println("getName:" + file.getName()); // getName:demo\test.txt System.out.println("length:" + file.length()); // length:0 System.out.println("lastModified:" + file.lastModified()); // lastModified:0 // 1416471971031 Date d = new Date(1416471971031L); SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); String s = sdf.format(d); System.out.println(s); // 2014-11-20 16:26:11 } } 八、File类的成员方法之高级获取功能 1、public String[] list(): 获取指定目录下的所有文件或者文件夹的名称数组 2、public File[] listFiles(): 获取指定目录下的所有文件或者文件夹的File数组 public class FileDemo { public static void main(String[] args) { // 指定一个目录 File file = new File("e:\\"); // public String[] list():获取指定目录下的所有文件或者文件夹的名称数组 String[] strArray = file.list(); for (String s : strArray) { System.out.println(s); } System.out.println("------------"); // public File[] listFiles():获取指定目录下的所有文件或者文件夹的File数组 File[] fileArray = file.listFiles(); for (File f : fileArray) { System.out.println(f.getName()); } } }
相关文章推荐
- 黑马程序员 java 基础 毕向东 面向对象 IO操作 File Properties PrintWriter PrintStream 应用
- 【跟着imooc重学java】Java File IO读写操作
- JavaIO 文件递归遍历及常用File类操作
- Java文件IO操作应该抛弃File拥抱Paths和Files
- java IO 字节流、字符流操作总结一之File类
- java IO操作:FileInputStream,FileOutputStream,FileReader,FileWriter实例
- Java IO操作之File类
- Java的IO操作---File类
- java IO操作与字节流(一)File创建,与文件的查找
- 黑马程序员——javaIO中File的操作与应用
- java.io.File操作文件的一些常用方法
- [Java 12 IO] File 类 的几个基本操作
- java.io.File类各种文件操作
- IO_File_常用方法_文件夹操作_命令模式查找JAVA145
- [Java 12 IO] File 类 的几个基本操作
- Java IO操作——文件操作类File的使用
- java的IO操作之--RandomAccessFile
- java.io.File文件操作容易失误的两点--mkdirs()、删除目录
- java.io.file 各种文件操作
- java中的IO操作之File类