1.文件类
文件夹:用来组织和管理磁盘文件的一种数据结构。
文件:以实现某种功能或某个软件部分功能为目的定义的一个单位。
功能:获得文件或文件夹得属性信息
创建,删除,重命名文件
构造File对象的前提是:路径一定是完整且正确的。
2.常用方法及解释:
方法名 | 解释 | 方法名 | 解释 |
mkdir() | 创建此抽象路径名指定的目录 | exists() | 测试此抽象路径名表示的文件或目录是否存在 |
mkdirs() | 创建此抽象路径名指定的目录,包括所有必需但不存在的父目录 | isDirectory() | 测试此抽象路径名表示的文件是否是一个目录 |
createNewFile() | 当且仅当不存在具有此抽象路径名指定名称的文件时,不可分地创建一个新的空文件 | isFile() | 测试此抽象路径名表示的文件是否是一个标准文件 |
delete() | 删除此抽象路径名标识的文件或目录 | isHidden() | 测试此抽象路径名表示的文件是否是一个隐藏文件 |
canRead() | 测试应用程序是否可以读取此抽象路径名表示的文件 | getName() | 返回此抽象路径名表示的文件或目录的名称 |
getAbsolutePath() | 返回此抽象路径名的绝对路径名字符串 | getParent() | 返回此抽象路径名父目录的路径名字符串;如果此路径没有指定父类,则返回null |
length() | 返回由此抽象路径名表示的文件的长度 | list() | 返回一个字符串数组,这些字符串指定此抽象路径名表示的目录中的文件和目录 |
renameTo(File dest) | 重新命名此抽象路径名表示的文件 | listFiles() | 返回一个抽象路径名数组,这些路径名表示此抽象路径名表示的目录中的文件 |
canWrite() | 测试应用程序是否可以修改此抽象路径名表示的文件 | getPath() | 将此抽象路径名转换为一个路径名字符串 |
3.构造File的代码演示(盘符):
import java.io.File;
import java.util.Scanner;
public class Demo1 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
String input = sc.nextLine();
do {
File file = new File(input+":\\");
String[] files = file.list();
for (String s : files) {
File f = new File(input+":\\"+s); 构造File对象的前提是:路径一定是完整且正确的。
if(f.isDirectory()&&!f.isHidden()) {
System.out.println("<DIR>\t"+f.getName()+"\t"+f.length()/1024+"KB");
}
}
for (String s : files) {
File f = new File(input+":\\"+s); 构造File对象的前提是:路径一定是完整且正确的。
if(f.isFile()&&!f.isHidden()) {
System.out.println("<FILE>\t"+f.getName()+"\t"+f.length()/1024+"KB");
}
}
input = sc.nextLine();
}while(!input.equals("x"));
}
}
import java.io.File;
import java.util.Scanner;
public class Demo2 {
private static String input;
private static String parent;
public static void main(String[] args) {
System.out.println("请输入目录(如果是盘符,后面需加上' :')");
Scanner scanner = new Scanner(System.in);
input = scanner.nextLine();
do {
File cFile = new File(input + "/");
String[] files = cFile.list();
for (String s : files) {
File f = new File(input + "/" + s);
if(f.isDirectory()&&!f.isHidden()) {
System.out.println("<DIR>\t"+f.getName());
}
}
for (String s : files) {
File f = new File(input+":\\"+s);
if(f.isFile()&&!f.isHidden()) {
System.out.println("<FILE>\t"+f.getName());
}
}
input = scanner.nextLine();
}while(!input.equals("Q"));
}
}