I/O输入输出-File类
以前在学c语言的时候,总是不知道如何编写文件写入和读取的代码,现在,想想,其实很简单,但那个时候的我就是看不进去书,现在学java,,先来总结下File类吧!
File类是java.io包中唯一代表磁盘文件本身的对象,File类定义了一些与平台无关的方法来操作文件,可以通过调用File类中的方法,实现创建,删除,重命名文件。
File类的对象主要用来获取文件本身的一些信息,如文件所在的目录,文件的长度,文件读写权限等。数据流可以将数据写入到文件中,文件也是数据流最常用的数据媒体
package fjz; import java.io.File; public class Demo001 { /** * 返回结果如下 * ---------------------------------- zjf.txt zjf.txt null G:\Users\workspace\Io-file\zjf.txt ----------------------------------- * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub //当没有指明路径的时候,系统默认是在users\workspace路径下 System.out.println("-----------------------------------"); File src = new File("zjf.txt"); System.out.println(src.getPath());//返回路径名 System.out.println(src.getName());//返回文件名 System.out.println(src.getParent());//返回父目录 System.out.println(src.getAbsolutePath());//返回绝对路径 System.out.println("-----------------------------------"); } }
测试文件判断信息
public static void test2() { File src = new File("e:/test"); System.out.println("该文件是否存在:"+src.exists()); System.out.println("该文件是可写:"+src.canWrite()); System.out.println("该文件是否可读:"+src.canRead()); System.out.println("该文件是文件吗?:"+(src.isFile()?true:false)); System.out.println("该文件的长度为:"+src.length()); System.out.println("判断文件是否是一个目录:"+src.isDirectory()); System.out.println("获取文件最后修改时间:"+src.lastModified()); System.out.println("文件是否为隐藏文件:"+src.isHidden()); }
通过File对象可以访问文件的属性,创建空文件或目录
public static void test3() { File src = new File("e:/test/zjf1.txt");//这是文件的路径,先定义一个对象与文件建立关联 if(!src.exists()) { System.out.println("*****该文件是不存在的,所以需要创建文件********"); try { src.createNewFile();//对象与建立关系的文件如果不存在,利用该函数创建文件, //那么路径下的文件就实际存在了 } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } System.out.println("此时该文件存在吗?"+src.exists()); } else { System.out.println("**********该文件是存在的,我想删除该文件******"); src.delete(); System.out.println("该文件被我删除后,请问该文件还存在吗"+src.exists()); } }
关于操作目录(以后补充)
1, mkdir(); 创建目录,必须确保父目录存在,否则无法创建
2,mkdirs(); 创建目录,若父目录不存在,则一同创建
3,list();
4, listFiles();
5, listRoots();