一、java.io.File类  

  String path="E:/222/aaa";//路径
  String path1="aaa.txt";
  File file=new File(path+"/"+path1);//创建一个路径对象
  
常用方法:
  boolean exists = file.exists();//判断路径是否存在
  if(exists){
    System.out.println("存在此路径");
  }else{
    System.out.println("不存在此路径");
    //如果E盘中有222这个文件就只要创建aaa这一级目录
    File mk1=new File(path);
    boolean mkdir = mk1.mkdir();//创建目录(一级)
    //如果E盘中没有222这个文件就只要创建/222/aaa这多级目录
    File mk2=new File(path);
    boolean mkdirs = mk2.mkdirs();//创建目录(多级)
  }
  boolean createNewFile = file.createNewFile();//在文件夹已经存在的情况下创建一个文件,返回是否创建成功如果文件夹不存在,得先创建文件夹路径
  boolean file2 = file.isFile();//判断路径是否是 文件
  boolean directory = file.isDirectory();//判断路径是否是 文件夹
  boolean delete = file.delete();//删除路径(目录删除时必须是空目录,也就是说不可以有文件存在,如果有文件存在得先删除文件路径再删除目录路径)
  //eg:
  File ff=new File("E:/222/aaaa/aaa.txt");
  boolean d2 = ff.delete();//先删aaa.txt文件
  File f=new File("E:/222/aaaa");
  boolean d1 = f.delete();//再删aaaa文件夹

  File parentFile = file.getParentFile();//返回路径的父路径 E:/222/aaa
  String name = file.getName();//返回路径指向的名称 aaa.txt

  File[] listRoots = File.listRoots();//列出所有磁盘目录
  File[] listFiles = file.listFiles();//列出所有子路径(子文件、子文件夹)
  String[] list = file.list();//列出所有子路径名称

  }
//特例:一次性安全 删除目录
  static boolean deleteFile(File file){
    if(file.isDirectory()){
      for(File f : file.listFiles())
      deleteFile(f);
    }
    return file.delete();
  }

二、其它常用方法

静态方法
  static File createTempFile(String prefix, String suffix) 在默认临时文件目录中创建一个空文件,使用给定前缀和后缀生成其名称。
  static File createTempFile(String prefix, String suffix, File directory) 在指定目录中创建一个新的空文件,使用给定的前缀和后缀字符串生成其名称。
  static File[] listRoots() 列出可用的文件系统根。

实例方法
  boolean canExecute() 测试应用程序是否可以执行此抽象路径名表示的文件。
  boolean canRead() 测试应用程序是否可以读取此抽象路径名表示的文件。
  boolean canWrite() 测试应用程序是否可以修改此抽象路径名表示的文件。
  boolean createNewFile() 当且仅当不存在具有此抽象路径名指定名称的文件时,不可分地创建一个新的空文件。

  boolean exists() 测试此抽象路径名表示的文件或目录是否存在。
  boolean isDirectory() 测试此抽象路径名表示的文件是否是一个目录。
  boolean isFile() 测试此抽象路径名表示的文件是否是一个标准文件。
  boolean isHidden() 测试此抽象路径名指定的文件是否是一个隐藏文件。
  boolean isAbsolute() 测试此抽象路径名是否为绝对路径名。

  boolean mkdir() 创建此抽象路径名指定的目录。
  boolean mkdirs() 创建此抽象路径名指定的目录,包括所有必需但不存在的父目录。

  boolean renameTo(File dest) 重新命名此抽象路径名表示的文件。

  boolean delete() 删除此抽象路径名表示的文件或目录。
  void deleteOnExit() 在虚拟机终止时,请求删除此抽象路径名表示的文件或目录。

  String getName() 返回由此抽象路径名表示的文件或目录的名称。
  String getPath() 将此抽象路径名转换为一个路径名字符串。

  File getAbsoluteFile() 返回此抽象路径名的绝对路径名形式。
  String getAbsolutePath()返回此抽象路径名的绝对路径名字符串。

  long getFreeSpace() 返回此抽象路径名指定的分区中未分配的字节数。
  long getTotalSpace() 返回此抽象路径名指定的分区大小。

  String getParent() 返回此抽象路径名父目录的路径名字符串;如果此路径名没有指定父目录,则返回 null。
  File getParentFile() 返回此抽象路径名父目录的抽象路径名;如果此路径名没有指定父目录,则返回 null。
  long lastModified() 返回此抽象路径名表示的文件最后一次被修改的时间。
  long length() 返回由此抽象路径名表示的文件的长度。
  String[] list() 返回一个字符串数组,这些字符串指定此抽象路径名表示的目录中的文件和目录。
  String[] list(FilenameFilter filter)返回一个字符串数组,这些字符串指定此抽象路径名表示的目录中满足指定过滤器的文件和目录。
  File[] listFiles() 返回一个抽象路径名数组,这些路径名表示此抽象路径名表示的目录中的文件。
  File[] listFiles(FileFilter filter)返回抽象路径名数组,这些路径名表示此抽象路径名表示的目录中满足指定过滤器的文件和目录。
  File[] listFiles(FilenameFilter filter)返回抽象路径名数组,这些路径名表示此抽象路径名表示的目录中满足指定过滤器的文件和目录。

  boolean setExecutable(boolean executable) 设置此抽象路径名所有者执行权限的一个便捷方法。
  boolean setExecutable(boolean executable, boolean ownerOnly)设置此抽象路径名的所有者或所有用户的执行权限。
  boolean setReadable(boolean readable) 设置此抽象路径名所有者读权限的一个便捷方法。
  boolean setReadable(boolean readable, boolean ownerOnly) 设置此抽象路径名的所有者或所有用户的读权限。
  boolean setWritable(boolean writable) 设置此抽象路径名所有者写权限的一个便捷方法。
  boolean setWritable(boolean writable, boolean ownerOnly) 设置此抽象路径名的所有者或所有用户的写权限。

  boolean setLastModified(long time) 设置此抽象路径名指定的文件或目录的最后一次修改时间。
  boolean setReadOnly() 标记此抽象路径名指定的文件或目录,从而只能对其进行读操作。

java.io.File类操作的更多相关文章

  1. java.io.File类

    java.io.File类 1.凡是与输入.输出相关的类.接口等都定义在java.io包下 2.File是一个类.能够有构造器创建其对象.此对象相应着一个文件(.txt .avi .doc .ppt ...

  2. 33.JAVA编程思想——JAVA IO File类

    33.JAVA编程思想--JAVA IO File类 RandomAccessFile用于包括了已知长度记录的文件.以便我们能用 seek()从一条记录移至还有一条:然后读取或改动那些记录. 各记录的 ...

  3. [java]借助java.io.File类,完成文件批量改名

    列出某目录下的所有文件,将文件改名,借助java.io.File一个类就可以完成.大家可以发现,代码中的具体方法都是File一个类的. 另外要注意的是,File的全路径名,路径是一致的,父路径其实是文 ...

  4. java:IO:file 类

    刷某一目录下的所有文件夹/文件 public class FileDemo2 { public static void main(String args[]) { File file = new Fi ...

  5. Java 之 File类(文件操作)

    一.概述 java.io.File 类是文件和目录路径名册抽象表示,主要用于文件和目录的创建.查找和删除等操作. File类是一个与系统无关的类,任何的操作系统都可以使用这个类中的方法. 路径问题: ...

  6. Java之File类

    一.初见File类 java.io.File类代表系统中的文件(文件或目录) 常用构造方法 File(String pathname) File(String parent, String child ...

  7. java之java.io.File的相关方法

    java.io.File的使用. IO原理及流的分类. 文件流:FileInputStream.FileOutputStream.FileReader.FileWriter 缓存流:BufferedI ...

  8. Java【File类、递归】

    File 1.在io包中 操作电脑中的文件和文件夹 java.io.File 类是文件和目录路径名的抽象表示,主要用于文件和目录的创建.查找和删除等操作. 我们可以使用File类的方法     创建一 ...

  9. Java文件File类学习总结

    java.io.File类 代表文件和目录,在开发中,读取文件.生成文件.删除文件.修改文件的属性都会用到该类. 常见构造方法: public File(String pathName){} 以pat ...

随机推荐

  1. 搭建LAMP环境示例

    html { font-family: sans-serif } body { margin: 0 } article,aside,details,figcaption,figure,footer,h ...

  2. ubuntu环境下lnmp环境搭建(3)之Php

    1.lnmp详细  http://www.discuz.net/thread-3513107-1-1.html 2. 到php目录 http://blog.aboutc.net/linux/65/co ...

  3. JS里try...catch...finally详解,以及console日志调试(console.log、console.info等)

    <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <m ...

  4. Dapper数据库相关操作

    using System; using System.Data; using System.Configuration; using System.Data.SqlClient; namespace ...

  5. Linq常见操作示例

    static void DeferredQuery() { var names = new List<string> { "Nino", "Alberto&q ...

  6. 远程连接MySQL,防火墙阻止访问,解决方法

    远程连接MySQL,防火墙阻止访问,解决方法   xp/2003添加防火墙例外端口 打开防火墙,选择例外选项卡,添加端口 名称:mysqlport 端口号:3306 选中TCP win7添加防火墙例外 ...

  7. PHP常用表达式用法

    1.匹配正整数:/^[1-9]\d*$/ 2.匹配非负整数(正整数+0):/^\d+$/ 3.匹配中文:/^[\x{4e00}-\x{9fa5}]+$/u 4.匹配Email:/^\w+([-+.]\ ...

  8. win10 edge扩展

    安装红石预览版 https://dev.windows.com/zh-cn/microsoft-edge/extensions/#available-extensions 微软翻译 鼠标手势

  9. 恶意软件Mirai换了个马甲 瞄上我国2亿多台IoT设备

    恶意软件Mirai换了个马甲 瞄上我国2亿多台IoT设备   想要起来时,一种沉重感阻碍着他,这是一种安全感:感觉到一张床为他铺好了,而且只属于他:想要静卧时,一种不安阻碍着他,把他从床上赶起来,这是 ...

  10. Java并发之CountDownLatch、CyclicBarrier和Semaphore

    CountDownLatch 是能使一组线程等另一组线程都跑完了再继续跑:CyclicBarrier 能够使一组线程在一个时间点上达到同步,可以是一起开始执行全部任务或者一部分任务. CountDow ...