Java中File类重点剖析 博客分类: Java javaiofile
程序员文章站
2024-03-16 19:12:10
...
Java的File类是一个用于进行文件操作的类。
File位于Java的java.io包下,我们可以通过它来进行诸如文件的创建,删除,以及对文件的判断等。
通常我们所说的文件基本分为三种:
文件,文件夹,内存虚拟文件
我们在Java中一般只是讨论前面两类,不涉及虚拟的内存文件。
File类里面我们一般要使用的就是一些重要的重要的构造器和方法,
我们创建一个File类的实例,其初始化值就意味着加载待处理的相应文件(或目录)。
方法中我们用到最多的一般有:
boolean exist()
boolean isDictionary()
boolean isFile()
long length()
File[] listFIles()
他们都是一般的方法使用
下面我举一个例子:
我们可以使用File类来创建目录,创建目录有两个方法:
1. objDir.mkDir(); 返回一个boolean表示创建成功与否,只能在已有目录下创建(子目录)
2. objDir.mkDirs();返回一个boolean表示创建成功与否,即使父目录不存在也能够创建。例如:当 File objDir = new File(“ hehe/dir ”); 表示在当前相对目录下再创建两级目录hehe/dir,这时使用mkDirs()方法才行,而mkDir()方法失败。注意:如果new File(“/hehe/dir”);表示从当前盘符的根目录(D:/)创建,由于这个根目录总是存在的,所以mkDir()方法也能创建成功,却往往不是我们所要的结果。
创建了目录就可以创建文件了,如果在不存在的目录下创建文件会抛出异常。
objFile. createNewFile ();返回一个boolean表示创建成功与否,这样就创建了一个空文件:D:/XP/test/filename.txt
下面可以查看文件的名称、大小、路径、父目录、可读可写状态、判断文件是否存在、是否是一个目录或是文件、获取文件最后修改的时间、修改文件名,删除文件或目录等。
方法名如下:
System.out.println("绝对路径:" + objFile.getAbsolutePath());
System.out.println("相对路径:" + objFile.getPath());
System.out.println("父目录:" + objFile.getParent());
System.out.println("是否可读:" + objFile.canRead());
System.out.println("是否可写:" + objFile.canWrite());
System.out.println("文件长度:" + objFile.length());
//要使用文件所在的目录来取里面的list,再通过循环来进行处理
System.out.println("所在目录文件列表:" + (int) (objDir.list().length));
System.out.println("文件名:" + objFile.getName());
System.out.println("文件存在否:" + objFile.exists());
System.out.println("文件删除成功否:" + objFile.delete());
注:要删除一个目录objDir.delete();必须要目录为空才行,如果目录不为空,可以使用objDir.list()获取当前目录下的文件列表String[],循环将其中的文件删除后继而删除目录
File位于Java的java.io包下,我们可以通过它来进行诸如文件的创建,删除,以及对文件的判断等。
通常我们所说的文件基本分为三种:
文件,文件夹,内存虚拟文件
我们在Java中一般只是讨论前面两类,不涉及虚拟的内存文件。
File类里面我们一般要使用的就是一些重要的重要的构造器和方法,
我们创建一个File类的实例,其初始化值就意味着加载待处理的相应文件(或目录)。
方法中我们用到最多的一般有:
boolean exist()
boolean isDictionary()
boolean isFile()
long length()
File[] listFIles()
他们都是一般的方法使用
下面我举一个例子:
我们可以使用File类来创建目录,创建目录有两个方法:
1. objDir.mkDir(); 返回一个boolean表示创建成功与否,只能在已有目录下创建(子目录)
2. objDir.mkDirs();返回一个boolean表示创建成功与否,即使父目录不存在也能够创建。例如:当 File objDir = new File(“ hehe/dir ”); 表示在当前相对目录下再创建两级目录hehe/dir,这时使用mkDirs()方法才行,而mkDir()方法失败。注意:如果new File(“/hehe/dir”);表示从当前盘符的根目录(D:/)创建,由于这个根目录总是存在的,所以mkDir()方法也能创建成功,却往往不是我们所要的结果。
创建了目录就可以创建文件了,如果在不存在的目录下创建文件会抛出异常。
objFile. createNewFile ();返回一个boolean表示创建成功与否,这样就创建了一个空文件:D:/XP/test/filename.txt
下面可以查看文件的名称、大小、路径、父目录、可读可写状态、判断文件是否存在、是否是一个目录或是文件、获取文件最后修改的时间、修改文件名,删除文件或目录等。
方法名如下:
System.out.println("绝对路径:" + objFile.getAbsolutePath());
System.out.println("相对路径:" + objFile.getPath());
System.out.println("父目录:" + objFile.getParent());
System.out.println("是否可读:" + objFile.canRead());
System.out.println("是否可写:" + objFile.canWrite());
System.out.println("文件长度:" + objFile.length());
//要使用文件所在的目录来取里面的list,再通过循环来进行处理
System.out.println("所在目录文件列表:" + (int) (objDir.list().length));
System.out.println("文件名:" + objFile.getName());
System.out.println("文件存在否:" + objFile.exists());
System.out.println("文件删除成功否:" + objFile.delete());
注:要删除一个目录objDir.delete();必须要目录为空才行,如果目录不为空,可以使用objDir.list()获取当前目录下的文件列表String[],循环将其中的文件删除后继而删除目录
推荐阅读
-
Java中File类重点剖析 博客分类: Java javaiofile
-
java中子类与父类中的静态代码块、非静态代码块和构造函数的加载顺序 博客分类: JAVA基础 静态代码块非静态代码块加载顺序
-
java中子类与父类中的静态代码块、非静态代码块和构造函数的加载顺序 博客分类: JAVA基础 静态代码块非静态代码块加载顺序
-
Java中String类的方法详解 博客分类: JAVA面试题 JavaCC++C#Solaris
-
JavaFX中实例化Java类对象 博客分类: JavaFX JavaFXJava.net
-
JavaFX中实例化Java类对象 博客分类: JavaFX JavaFXJava.net