-
13、java——常用类
- 枚举类型
描述一种事物的所有情况|所有可能|所有实例
(1)通过enum关键字定义枚举类型
(2)枚举的成员,字段都作为当前枚举类型的实例存在,默认被public static final修饰
(3)定义的枚举类型都会隐式的继承自java.lang.Enum 这是所有Java语言枚举类型的公共基类。
(4)在枚举类型中构造器默认私有
(5)java是值传递:基本数据类型的数据值,引用数据类型的地址值
2、File 路径或者文件的抽象的表现形式
注意:java中路径的分隔符可以使用: \\ / //
public static void main(String[] args) throws IOException {
//File(String pathname) 通过将给定的路径名字符串转换为抽象路径名来创建新的 File实例。
File file1 = new File("D:\\test.txt");
File file2 = new File("D:\\AAA");
File file3 = new File("D:/");
//File(File parent, String child) 从父抽象路径名和子路径名字符串创建新的 File实例。
File file4 = new File(file3,"test.txt");
////File(String parent, String child) 从父路径名字符串和子路径名字符串创建新的 File实例。
File file5 = new File("D://AAA","BBB");
File file6 = new File("D://haha.txt");
System.out.println(file1);
System.out.println(file2);
System.out.println(file4);
System.out.println(file1.equals(file4));
System.out.println(file2.equals(file5));
System.out.println(file5);
//常用方法
//boolean canWrite() 测试应用程序是否可以修改此抽象路径名表示的文件。
//boolean exists() 测试此抽象路径名表示的文件或目录是否存在。
//boolean setReadOnly() 标记此抽象路径名指定的文件或目录,以便仅允许读取操作。
if(file1.exists()){
System.out.println("只读状态设置: "+file1.setReadOnly());
System.out.println("判断文件file1是否可以编写 "+file1.canWrite());
}
//boolean createNewFile() 当且仅当具有此名称的文件尚不存在时,以原子方式创建由此抽象路径名命名的新空文件。
if(!file6.exists()){
System.out.println(file6.createNewFile());
}
//boolean delete() 删除此抽象路径名表示的文件或目录。 空文件夹才可以删除
System.out.println(file6.delete());
System.out.println(file2.delete());
//File getAbsoluteFile() 返回此抽象路径名的绝对形式。
//String getAbsolutePath() 返回此抽象路径名的绝对路径名字符串。
System.out.println(file1.getAbsolutePath());
System.out.println(file1.getAbsoluteFile());
//默认相对于当前项目下
File file = new File("test.txt");
System.out.println(file);
System.out.println(file.getAbsolutePath()); //D:\source_s\lesson\java49\0206_常用类\002_code\project_class\test.txt
System.out.println(file.getAbsoluteFile()); //D:\source_s\lesson\java49\0206_常用类\002_code\project_class\test.txt
//long getFreeSpace() 通过此抽象路径名返回分区 named中未分配的字节数。
System.out.println(file3.getFreeSpace());
//long getTotalSpace() 通过此抽象路径名返回分区 named的大小。
//String getName() 返回此抽象路径名表示的文件或目录的名称。
System.out.println(file1.getName());
System.out.println(file5.getName());
//String getParent() 返回此抽象路径名父项的路径名字符串,如果此路径名未指定父目录,则返回 null 。
//File getParentFile() 返回此抽象路径名父项的抽象路径名,如果此路径名未指定父目录,则返回 null 。
System.out.println(file1.getParent());
System.out.println(file1.getParentFile());
System.out.println(file5.getParent());
System.out.println(file5.getParentFile());
/*
boolean isAbsolute() 测试此抽象路径名是否为绝对路径。
boolean isDirectory() 测试此抽象路径名表示的文件是否为目录。
boolean isFile() 测试此抽象路径名表示的文件是否为普通文件。
*/
System.out.println(file1.isFile());
System.out.println(file1.isDirectory());
System.out.println(file1.isAbsolute());
//long lastModified() 返回上次修改此抽象路径名表示的文件的时间。
System.out.println(file1.lastModified());
System.out.println(new SimpleDateFormat("yyyy/MM/dd HH:mm:ss").format(new Date(file1.lastModified())));
//long length() 返回此抽象路径名表示的文件的长度。
System.out.println(file1.length());
//String[] list() 返回一个字符串数组,用于命名此抽象路径名表示的目录中的文件和目录。
//File[] listFiles() 返回一个抽象路径名数组,表示此抽象路径名表示的目录中的文件。
File src = new File("D://DDD");
System.out.println(Arrays.toString(src.list()));
File[] files = src.listFiles();
for(File f:files){
System.out.println(f);
}
File file8 = new File("D://haha");
File file9 = new File("D://hehe/heihei/hengheng.txt");
//boole9n mkdir() 创建此抽象路径名指定的目录。 一层
System.out.println(file8.mkdir());
//boolean mkdirs() 创建此抽象路径名指定的目录,包括任何必需但不存在的父目录。 多层
System.out.println(file9.getParentFile().mkdirs());
//boolean renameTo(File dest) 重命名此抽象路径名表示的文件。
//测试 : 跨盘符是否可以实现重命名???
File file10 = new File("D://test2.txt");
System.out.println(file1.renameTo(file10));
}
}
出处:https://www.cnblogs.com/Blank0926/p/15027428.html