一、java使用File类来表示计算机系统磁盘文件的对象类型。File中提供了大量的方法,可以对文件进行增加、删除、修改、重命名等常规操作。File类的对象会存储文件自身的信息,例如文件在系统中的存储目录、文件大小、文件读写权限等。
二、创建File文件
package Java_IO.EilePractice;
import java.io.File;
import java.io.IOException;
public class Demo01 {
public static void main(String[] args) {
try {
File file1 = new File("D:\\x9504.txt");
//创建一个新的普通文件文件
boolean flag1=file1.createNewFile();
System.out.println(flag1?"创建成功":"创建失败");
//创建一个新的文件夹
File file2 = new File("D:\\Lunk");
boolean flag2=file2.mkdir();
System.out.println(flag2?"文件夹创建成功":"文件夹创建失败");
//创建多级文件
File file3 = new File("D:\\wang\\css\\bgcolor");
boolean flag3=file3.mkdirs();
System.out.println(flag3?"多级文件创建成功":"多级文件创建失败");
} catch (IOException e) {
e.printStackTrace();
}
}
}
运行结果:
创建成功
文件夹创建成功
多级文件创建成功
查看D盘是否创建
三、删除文件
package Java_IO.EilePractice;
import java.io.File;
public class Demo02 {
public static void main(String[] args) {
File file = new File("D:\\x9504.txt");
boolean flag1=file.delete();
System.out.println(flag1?"删除成功":"删除失败");
}
}
运行结果:
删除成功
查看D盘已无文件
四、判断某个路径的文件是否存在
我们之前创建过一个Lunk文件,预期代码输出结果是:“您的文件已经存在,无需创建”
package Java_IO.EilePractice;
import java.io.File;
/**
* 判断某个路径的文件是否存在
*/
public class Demo03 {
public static void main(String[] args) {
File file1 = new File("D:\\Lunk");
//判断某个路径的文件是否存在
boolean flag1 = file1.exists();
if (flag1) {//如果有则无需创建文件
System.out.println("您的文件已存在,无需创建");
}else{//如果没有则创建文件
file1.mkdir();
}
}
}
查看与预期结果是否一致:
运行结果:
您的文件已存在,无需创建
五、获取文件大小
package Java_IO.EilePractice;
import java.io.File;
import java.io.IOException;
/**
* 判断某个路径的文件是否存在
*/
public class Demo03 {
public static void main(String[] args) {
try {
File file1 = new File("D:\\Lunk");
//判断某个路径的文件是否存在
boolean flag1 = file1.exists();
if (flag1) {//如果有则无需创建文件
System.out.println("您的文件已存在,无需创建");
}else{//如果没有则创建文件
file1.mkdir();
}
//获取文件大小
File file2 = new File("D:\\祖国.txt");
file2.createNewFile();
Long size = file2.length();
System.out.println("size="+size);
} catch (IOException e) {
e.printStackTrace();
}
}
}
我的D盘中没有“祖国.txt”,新创建的size应该为0
运行结果:
您的文件已存在,无需创建
size=0
我们在D盘中“祖国.txt”中添加“中华人民共和国”,看长度为多少,输出预期结果应为:size=21
添加后输出结果为:
六、获取文件名及文件的路径
package Java_IO.EilePractice;
import java.io.File;
import java.io.IOException;
/**
* 判断某个路径的文件是否存在
*/
public class Demo03 {
public static void main(String[] args) {
try {
File file1 = new File("D:\\Lunk");
//判断某个路径的文件是否存在
boolean flag1 = file1.exists();
if (flag1) {//如果有则无需创建文件
System.out.println("您的文件已存在,无需创建");
}else{//如果没有则创建文件
file1.mkdir();
}
//获取文件大小
File file2 = new File("D:\\祖国.txt");
file2.createNewFile();
Long size = file2.length();
System.out.println("size="+size);
//获取文件名
String fileName = file2.getName();
System.out.println("fileName="+fileName);
//获取文件路径
String path = file2.getPath();
System.out.println("Path="+path);
} catch (IOException e) {
e.printStackTrace();
}
}
}
输出结果:
七、判断文件是否是文件夹及查看D盘中的所有文件
package Java_IO.EilePractice;
import java.io.File;
public class Demo04 {
private static Demo04 FileDemo4;
public static void showFile(String pathname){
File f1 = new File(pathname);
//判断文件是否为文件夹
boolean flag1 = f1.isDirectory();
//选择某个文件夹下的所有文件
if(flag1) {
File[] files = f1.listFiles();
for(int i = 0;files!=null&&i<files.length;i++){
boolean flag2 = files[i].isDirectory();
if(flag2){
showFile(files[i].getPath());
}else{
//获取此文件目录
String filePath = f1.getPath();
System.out.println("普通文件=============="+filePath);
}
}
}
}
public static void main(String[] args) {
FileDemo4.showFile("D:\\");
}
}
运行结果: