Java学习总结------File类

Java中的File类

Java中对象至上,因此Java内部将操作系统中对文件的操作抽象成一个类,就是所谓的File类。该类提供了一些方法供用户使用,以至于通过程序来操纵文件。但该类并不能对文件的内容做任何操作,对文件的内容的操作需要用到IO流。

主要的构造方法

1.File(String pathname)

将给定的字符串作为文件路径,来创建File实例
eg:

String pathname = "D:" + File.separator + "test.txt";
File file = new File(pathname);
Tips: pathname可以是相对路径也可以是绝对路径,甚至该路 径可以不存在(因为此时只是实例化该类对象,并没有涉及到文件存在)。

绝对路径:从盘符开始的一个绝对的路径,唯一。

相对路径:相对于当前所处的文件的路径。不唯一。

File.separator:因为操作系统的不同,文件的路径分隔符也不同Window下‘\’,而Linux下是‘/’,而为了使得程序具有跨平台特性,所以使用File.separator,可以自动检测具体使用哪个斜杠。
2. File(String parent, String child)

parent为父目录的路径字符串,child为文件名的字符串
eg:

File file = new File("D:" + File.separator,"test.txt");

主要的操作方法

1.创建文件 public boolean createNewFile() throws IOException

eg:

public static void main(String[] args) {
    String pathName = "D:" + File.separator + "test.txt";
    File file1 = new File(pathName);
    try {
       file1.createNewFile();
    } catch (IOException e) {
        e.printStackTrace();
    }
}

文件不存在则创建文件,创建成功返回true,否咋返回false。程序抛出一个IOException,是一个受查异常,需要处理,否则编译不能通过。

2.删除文件 public boolean delete()

eg:

public static void main(String[] args) {
    String pathName = "D:" + File.separator + "test.txt";
    File file1 = new File(pathName);
    System.out.println( file1.delete());
}

文件存在且可以删除返回true,否咋返回false。文件删除后,在回收站找不到,当删除一个文件夹时,该文件夹必须为空。

3.判断文件是否存在 public boolean exists()

eg:

public static void main(String[] args) {
    String pathName = "D:" + File.separator + "test.txt";
    File file1 = new File(pathName);
    System.out.println(file1.exists());
}
4.获取文件的大小 public long length()

eg:

public static void main(String[] args) {
    String pathName = "D:" + File.separator + "test.txt";
    File file1 = new File(pathName);
    System.out.println( file1.length());
}

返回值为long类型,单位为字节。

5.创建目录(无论有多少级父目录,都会创建) public boolean mkdirs()

eg:

public static void main(String[] args) {
   String path = "D:" + File.separator + 
   "JavaCode" + File.separator + "test.java";
   File file = new File(path);
    System.out.println(file.mkdirs());
}

该方法将一切看作目录,即文件夹,因此最后的test.java也会称为一个文件夹。

6.判断路径是否为一个文件 public boolean isFile()

eg;

public static void main(String[] args) {
   String path = "D:" + File.separator + "JavaCode" + 
   File.separator + "test.java" + File.separator + "hehe";
   File file = new File(path);
   System.out.println(file.isFile());  // false
}
6.判断路径是否为一个目录 public boolean isDirectory()

eg:

public static void main(String[] args) {
   String path = "D:" + File.separator + "JavaCode" + 
   File.separator + "test.java" + File.separator + "hehe";
   File file = new File(path);
   System.out.println(file.isDirectory());  // true
}
7.获取绝对路径 public String getAbsolutePath();

eg

public static void main(String[] args) {
   String path = "hello.txt"; // 工程文件下有该文件
   File file = new File(path);
    System.out.println(file.getAbsolutePath());
}
8.获取当前目录下的所有文件或文件夹 public File[] listFiles()
public static void main(String[] args) {
   String path = "C:";
   File file = new File(path);
   File[] files = file.listFiles();
   for(File file1 : files){
       System.out.println(file1.getAbsolutePath());
   }
}

猜你喜欢

转载自blog.csdn.net/weixin_43213517/article/details/89363697
今日推荐