前言
主要介绍java的文件操作,由于kotlin与java类似,学习kotlin的可以做一些参考。除此以外,下一篇是关于文件操作的demo,感兴趣的可以关注一下。
一、exists和createNewFile
exists()判断文件是否存在;createNewFile()创建文件,返回值为boolean
import java.io.File;
import java.io.IOException;
public class JFile {
public static void main(String[] args) throws Exception {
//记录文件的路径
String desktopPath = "C:/Users/汐风的游戏/OneDrive/桌面/test";
String testPath = "C:/Users/汐风的游戏/OneDrive/桌面/test1";
String imagPath = "C:/Users/汐风的游戏/OneDrive/桌面/imag1";
File file = new File(testPath);
//判断文件是否存在exists()
if(!file.exists()){
System.out.println("文件不存在");
//创建文件,返回值为boolean类型
boolean result = file.createNewFile();
System.out.println("创建结果:" + result);
}else System.out.println("文件存在");
}
}
二、mkdir与mkdirs
mkdir与mkdirs最大的区别为mkdir只能创建一个,而mkdirs能创建多级目录
import java.io.File;
import java.io.IOException;
public class JFile {
public static void main(String[] args) throws Exception {
//记录文件的路径
String desktopPath = "C:/Users/汐风的游戏/OneDrive/桌面/test";
String testPath = "C:/Users/汐风的游戏/OneDrive/桌面/test1";
String imagPath = "C:/Users/汐风的游戏/OneDrive/桌面/imag1";
File file = new File(testPath);
//创建文件夹,也就是目录
boolean result = file.mkdir();
System.out.println(result);
}
}
三、创建文件的其他方式
package Jfiletext;
import java.io.File;
import java.io.IOException;
public class JFile {
public static void main(String[] args) throws Exception {
//记录文件的路径
String desktopPath = "C:/Users/汐风的游戏/OneDrive/桌面";
String testPath = "C:/Users/汐风的游戏/OneDrive/桌面/test1";
String imagPath = "C:/Users/汐风的游戏/OneDrive/桌面/imag1";
File file = new File(testPath);
//创建文件的第三种方式:上一级目录和chlid
File file2 = new File(desktopPath,"test2");
boolean result = file2.mkdir();
System.out.println(result);
//创建文件的第四种方式
File file3 = new File(file,"test3");
boolean result3 = file3.mkdir();
System.out.println(result3);
}
}
四、获取文件大小length
import java.io.File;
import java.io.IOException;
public class JFile {
public static void main(String[] args) throws Exception {
//记录文件的路径
String desktopPath = "C:/Users/汐风的游戏/OneDrive/桌面";
String testPath = "C:/Users/汐风的游戏/OneDrive/桌面/test";
String imagPath = "C:/Users/汐风的游戏/OneDrive/桌面/imag1";
File file = new File(testPath);
//获取文件大小
long len = file.length();
//输出为byte类型
System.out.println(len);
}
}
五、判断是否是文件还是文件夹
package Jfiletext;
import java.io.File;
import java.io.IOException;
public class JFile {
public static void main(String[] args) throws Exception {
//记录文件的路径
String desktopPath = "C:/Users/汐风的游戏/OneDrive/桌面";
String testPath = "C:/Users/汐风的游戏/OneDrive/桌面/test";
String imagPath = "C:/Users/汐风的游戏/OneDrive/桌面/imag1";
File file = new File(testPath);
if (!file.isFile()) {
System.out.println("不是文件");
}else System.out.println("是文件");
if (!file.isDirectory()) {
System.out.println("不是文件夹");
}else System.out.println("是文件夹");
}
}
总结
除了上述的方法,在java中还有list() 获取当前路径下的所有文件名字;listFile() 获取当前路径下的所有文件对应的File对象;list(FileNameFilter) 过滤出自己想要的文件(得到的是文件名;delete 删除文件;getParent()获取当前文件所在的目录的所在的路径;getAbsolutePath获取当前文件所在的目录的完整路径;renameTo剪切的工作等方法,有时间的话可以练习这些方法。