File对象和相关方法01

在Java中,File 类用于表示文件或目录的抽象路径名。它可以用于创建、删除、重命名、查询文件或目录的属性等操作。

ile 类提供了多个构造函数,用于创建 File 对象,表示文件或目录的抽象路径名。以下是 File 类的几种常用构造函数:

  1. 使用路径名构造:
    File file = new File(String pathname);
    
  2. 使用父目录和子路径构造:
    File file = new File(String parent, String child);
    
  3. 使用父目录和子路径构造:
    File file = new File(File parent, String child);
    
  4. 使用 URI 构造:
    File file = new File(URI uri);
    

    这些方法可以让你对文件和目录进行操作,例如创建新文件、删除文件、判断文件是否存在、获取文件属性等等。需要注意的是,File 类仅提供了路径的抽象表示,并不具备实际进行文件读写操作的能力。

在使用 File 类时,应当注意处理可能抛出的 IOException 异常。另外,为了确保资源的释放,可以使用 try-with-resources 语句来自动关闭文件流等相关资源。 

isDirectory()File 类的一个方法,用于判断当前对象表示的路径是否是一个目录。它返回一个布尔值,指示该路径是否是一个存在且是目录的路径。

以下是 isDirectory() 方法的一些细节:

  • 方法签名:public boolean isDirectory()
  • 返回值:如果路径存在且是一个目录,则返回 true;否则返回 false
  • 异常:如果发生 I/O 错误,可能会抛出 SecurityException
  • 注意事项:
    • 该方法只能用于判断路径是否是目录,不能判断路径是否是文件。
    • 如果路径不存在或不可访问,也会返回 false
    • 如果路径表示一个文件而不是目录,也会返回 false
      import java.io.File;
      
      public class Main {
          public static void main(String[] args) {
              File file = new File("/path/to/directory");
      
              if (file.isDirectory()) {
                  System.out.println("The path is a directory.");
              } else {
                  System.out.println("The path is not a directory.");
              }
          }
      }
      

isDirectory() 方法类似,isFile() 方法返回一个布尔值,指示该路径是否是一个存在且是文件的路径。

以下是 isFile() 方法的一些细节:

  • 方法签名:public boolean isFile()
  • 返回值:如果路径存在且是一个文件,则返回 true;否则返回 false
  • 异常:如果发生 I/O 错误,可能会抛出 SecurityException
  • 注意事项:
    • 该方法只能用于判断路径是否是文件,不能判断路径是否是目录。
    • 如果路径不存在或不可访问,也会返回 false
    • 如果路径表示一个目录而不是文件,也会返回 false
      import java.io.File;
      
      public class Main {
          public static void main(String[] args) {
              File file = new File("/path/to/file.txt");
      
              if (file.isFile()) {
                  System.out.println("The path is a file.");
              } else {
                  System.out.println("The path is not a file.");
              }
          }
      }
      

exists()File 类的一个方法,用于判断当前对象表示的路径是否存在。它返回一个布尔值,指示该路径是否存在于文件系统中。

以下是 exists() 方法的一些细节:

  • 方法签名:public boolean exists()
  • 返回值:如果路径存在,则返回 true;否则返回 false
  • 注意事项:
    • 该方法只检查路径是否存在,而不管它是目录还是文件。
    • 如果路径存在但不可访问,也会返回 false
      import java.io.File;
      
      public class Main {
          public static void main(String[] args) {
              File file = new File("/path/to/file.txt");
      
              if (file.exists()) {
                  System.out.println("The path exists.");
              } else {
                  System.out.println("The path does not exist.");
              }
          }
      }
      

length()File 类的一个方法,用于获取文件的大小,返回以字节为单位的文件长度。

以下是 length() 方法的一些细节:

  • 方法签名:public long length()
  • 返回值:返回文件的大小,以字节为单位。
  • 注意事项:
    • 如果路径表示的是一个目录而不是文件,或者文件不存在,将返回 0。
    • 文件大小可能超过 long 类型的表示范围,因此在处理大型文件时需要额外注意。
      import java.io.File;
      
      public class Main {
          public static void main(String[] args) {
              File file = new File("/path/to/file.txt");
      
              if (file.exists()) {
                  long fileSize = file.length();
                  System.out.println("The file size is: " + fileSize + " bytes");
              } else {
                  System.out.println("The file does not exist.");
              }
          }
      }
      

 

getAbsolutePath()File 类的一个方法,用于获取文件或目录的绝对路径。

以下是 getAbsolutePath() 方法的一些细节:

  • 方法签名:public String getAbsolutePath()
  • 返回值:返回一个表示文件或目录绝对路径的字符串。
  • 注意事项:
    • 绝对路径是指完整的路径,包含文件系统的根目录和所有父级目录。
    • 如果路径不存在或无法访问,返回的路径可能是不准确的。
      import java.io.File;
      
      public class Main {
          public static void main(String[] args) {
              File file = new File("relative/path/to/file.txt");
      
              String absolutePath = file.getAbsolutePath();
              System.out.println("Absolute path: " + absolutePath);
          }
      }
      

 

getPath()File 类的一个方法,用于获取文件或目录的路径。

以下是 getPath() 方法的一些细节:

  • 方法签名:public String getPath()
  • 返回值:返回一个表示文件或目录路径的字符串。
  • 注意事项:
    • 路径可以是相对路径或绝对路径,具体取决于创建 File 对象时传递的参数。
    • 如果 File 对象是通过相对路径创建的,则返回的是相对路径。
    • 如果 File 对象是通过绝对路径创建的,则返回的是绝对路径。
      import java.io.File;
      
      public class Main {
          public static void main(String[] args) {
              File file = new File("relative/path/to/file.txt");
      
              String path = file.getPath();
              System.out.println("Path: " + path);
          }
      }
      

 

getName()File 类的一个方法,用于获取文件或目录的名称。

以下是 getName() 方法的一些细节:

  • 方法签名:public String getName()
  • 返回值:返回一个表示文件或目录名称的字符串(带后缀)。
  • 注意事项:
    • 如果 File 对象表示一个文件,返回的是文件的名称(不包括路径)。
    • 如果 File 对象表示一个目录,返回的是目录的名称(不包括路径)。
    • 如果 File 对象是通过相对路径创建的,则返回的是相对路径的最后一部分。
    • 如果 File 对象是通过绝对路径创建的,则返回的是绝对路径的最后一部分。
      import java.io.File;
      
      public class Main {
          public static void main(String[] args) {
              File file = new File("/path/to/file.txt");
              
              String name = file.getName();
              System.out.println("Name: " + name);
          }
      }
      

lastModified()File 类的一个方法,用于获取文件或目录的最后修改时间。

以下是 lastModified() 方法的一些细节:

  • 方法签名:public long lastModified()
  • 返回值:返回一个表示文件或目录的最后修改时间的 long 值。该值表示自 1970 年 1 月 1 日 00:00:00 GMT 以来的毫秒数。
  • 注意事项:
    • 如果 File 对象表示一个目录,返回的是最后修改时间的相关信息。
    • 如果文件或目录不存在或无法访问,返回的值可能不具有实际意义。
      import java.io.File;
      
      public class Main {
          public static void main(String[] args) {
              File file = new File("/path/to/file.txt");
      
              long lastModifiedTime = file.lastModified();
              System.out.println("Last Modified Time: " + lastModifiedTime);
          }
      }
      

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值