File 类构造方法展开目录
- File(File parent, String child)
- //根据 parent 抽象路径名和 child 路径名字符串创建一个新 File 实例。
- File(String pathname)
- //通过将给定路径名字符串转换为抽象路径名来创建一个新 File 实例。
- File(String parent, String child)
- //根据 parent 路径名字符串和 child 路径名字符串创建一个新 File 实例。
- File(URI uri)
- //通过将给定的 file: URI 转换为一个抽象路径名来创建一个新的 File 实例
File 类属性展开目录
- static String pathSeparator
- //与系统有关的路径分隔符,为了方便,它被表示为一个字符串。
- static char pathSeparatorChar
- //与系统有关的路径分隔符。
- static String separator
- //与系统有关的默认名称分隔符,为了方便,它被表示为一个字符串。
- static char separatorChar
- //与系统有关的默认名称分隔符。
File 类常用方法展开目录
- //通过File对象可以获取访问文件的属性
- public boolean canRead()//判断文件能不能读
- public boolean canWrite()//判断文件能不能写
- public boolean exists()//判断文件存不存在
- public boolean isDirectory()//判断是不是一个目录
- public boolean isFile()//判断是不是一个文件
- public boolean isHidden()//判断是不是隐藏的
- public Long lastModified()//上次修改时间
- public Long length()//文件内容长度
- public String getName()//获取文件名
- public String getPath()//获取路径
-
- //通过File对象创建空文件或目录(在该对象所指的文件或目录不存在的情况下)
- public boolean createNewFile() throws IOException
- public boolean delete()
- public boolean mkdir()
- public boolean mkdirs()//创建在路径中的一系列目录
示例展开目录
- import java.io.*;
- public class Test{
- public static void main(String[] args){
- String separator = File.separator;
- String filename = "MyFile.txt";
- String directory = "Mydir1" + separator + "Mydir2"
- /*在windows中等价于
- String directory = "Mydir1/Mydir2"
- 由于linux和windows的路径分隔符不一样
- 所以最通用的办法就是用separator获取当前系统的分隔符*/
- File f = new File(directory,filename);
- if(f.exists()){
- System.out.println("文件名:" + f.getAbsolutePath());
- System.out.println("文件大小:" + f.length());
- }
- else{
- f.getParentFile().mkdirs();
- //因为是一系列路径“Mydir1/Mydir2”,所以用mkdirs()
- try{
- f.createNewFile();
- //createNewFile函数会抛出异常,所以必须try...catch
- }catch(IOException e){
- e.printStackTrace();
- }
- }
- }
- }
这里有一点说明,当这个程序没有包的情况下,创建的文件与这个程序的 class 文件在同一路径中;如果这个程序有包,那么就和包在同一路径中