public static void main(String[] args) {
//注意分辨创建的是文件还是文件夹
//创建文件的时候需要跟上后缀名
//如果创建文件时加上后缀名,后缀名部分会被认为是文件夹名字的一部分
File file4 = new File(“D:\java\test1.txt”);
try {
System.out.println(file4.createNewFile());
} catch (IOException e) {
e.printStackTrace();
}
File file5 = new File(“D:\java\test2.txt”);
System.out.println(file5.mkdir());
}
}
结果是分别创建了一个叫 test1.txt 文件和一个叫 test2.txt 的文件夹
需要注意的是,win10中,文件夹与文件不能同名
删除功能
public boolean delete()
package review.FileDemo;
import java.io.File;
import java.io.IOException;
public class Demo3 {
public static void main(String[] args) {
//一、删除文件
File file1 = new File(“D:\java\test1.txt”);
try {
file1.createNewFile();
} catch (IOException e) {
e.printStackTrace();
}
//删除成功返回true,删除失败返回false
System.out.println(file1.delete()); //true
//二、删除文件夹
File file2 = new File(“D:\java\test1\test2”);
file2.mkdirs();
//只有文件夹中为空时才能删除文件夹
File test1 = new File(“D:\java\test1”);
System.out.println(test1.delete()); //false,删除失败因为test1文件夹不为空
File test2 = new File(“D:\java\test2”);
System.out.println(test2.delete()); //false,删除失败因为路径不存在
File test3 = new File(“D:\java\test1\test2”);
System.out.println(test3.delete()); //true,删除成功
}
}
重命名功能:
public boolean renameTo(File dest)
import java.io.File;
public class Demo4 {
public static void main(String[] args) {
//renameTo将file1对象的名字改为file2的对象名
File file1 = new File(“D:\java\a.txt”);
File file2 = new File(“D:\java\b.txt”);
//修改成功返回true,失败为false
file1.renameTo(file2);
}
}
判断功能
public boolean isDirectory()
public boolean isFile()
public boolean exists()
public boolean canRead()
public boolean canWrite()
public boolean isHidden()
package review.FileDemo;
import java.io.File;
public class Demo5 {
public static void main(String[] args) {
File file1 = new File(“D:\java\a.txt”);
//判断是不是文件夹
System.out.println(file1.isDirectory()); //false
//判断是不是文件
System.out.println(file1.isFile()); //true
//判断文件是否存在
System.out.println(file1.exists()); //true
//判断是否可读
System.out.println(file1.canRead()); //true
//判断是否可写
System.out.println(file1.canWrite()); //true
//判断是否隐藏
System.out.println(file1.isHidden()); //false
//当file1不存在时,上面全是false
}
}
获取功能一
public String getAbsolutePath()
public String getPath()
public String getName()
public long length()
public long lastModified()
package review.FileDemo;
import java.io.File;
import java.io.IOException;
public class Demo6 {
public static void main(String[] args) {
//在idea的当前项目的src文件夹中创建test.txt文件
File file = new File(“src\test.txt”);
try {
file.createNewFile();
} catch (IOException e) {
e.printStackTrace();
}
//getAbsolutePath() 获取绝对路径,也就是获取完整路径
System.out.println(file.getAbsolutePath()); //F:\idea2018.1\workplace\Demo\src\test.txt
//getPath() 获取相对路径
System.out.println(file.getPath()); //src\test.txt
//getName() 获取文件名称
System.out.println(file.getName()); //test.txt
//long length() 获取文件的字节大小
System.out.println(file.length()); //0
//long lastModified() 指定文件最后一次被修改的时间戳
System.out.println(file.lastModified()); //1634645504934
}
}
获取功能二
public String[] list()
public File[] listFiles()
package review.FileDemo;
import java.io.File;
public class Demo7 {
public static void main(String[] args) {
File file = new File(“D:\java\Demo\file1”);
//String[] — list()
//获取指定目录下的所有文件和文件夹的名称,并将所有名称放入String类型数组
String[] list = file.list();
for(String s : list){
System.out.println(s);
}
System.out.println(“----------------”);
//File[] — listFiles()
//将指定目录下的所有文件和文件夹都放入File类型数组
File[] files = file.listFiles();
for(File file1 : files){
System.out.println(file1.getName());
}
}
}
例子
判断file1文件夹下面有没有以JPG为后缀名结尾的文件,如果有则打印出来
方法一、遍历File数组
package review.FileDemo;
import java.io.File;
public class Demo8 {
public static void main(String[] args) {
File file = new File(“D:\java\Demo\file1”);
File[] files = file.listFiles();
for(File file1 : files){
if(file1.isFile()){
if(file1.getName().endsWith(“.JPG”)){
System.out.println(file1.getName());
}
}
}
}
}
方法二、文件名称过滤器
package review.FileDemo;
最后
2020年在匆匆忙忙慌慌乱乱中就这么度过了,我们迎来了新一年,互联网的发展如此之快,技术日新月异,更新迭代成为了这个时代的代名词,坚持下来的技术体系会越来越健壮,JVM作为如今是跳槽大厂必备的技能,如果你还没掌握,更别提之后更新的新技术了。
更多JVM面试整理:
Name().endsWith(“.JPG”)){
System.out.println(file1.getName());
}
}
}
}
}
方法二、文件名称过滤器
package review.FileDemo;
最后
2020年在匆匆忙忙慌慌乱乱中就这么度过了,我们迎来了新一年,互联网的发展如此之快,技术日新月异,更新迭代成为了这个时代的代名词,坚持下来的技术体系会越来越健壮,JVM作为如今是跳槽大厂必备的技能,如果你还没掌握,更别提之后更新的新技术了。
[外链图片转存中…(img-sUHrJRiV-1714384640746)]
更多JVM面试整理:
[外链图片转存中…(img-hrc1eTXB-1714384640747)]