文件基本操作
原创
©著作权归作者所有:来自51CTO博客作者wx62eb7326068f3的原创作品,请联系作者获取转载授权,否则将追究法律责任
本文分为几个测试:删除文件,创建文件,结合FileOutputStream
1.测试删除文件
@Test
public void testDelete() {
// 测试删除文件
// 当文件不存在的时候输出false
// 当文件存在的时候就会直接删除,输出true(不会进入回收站,加入回收站是操作系统的功能,与我们自己的程序无关)
File file = new File("E:/test/a.java");
boolean isDelete = file.delete();
System.out.println(isDelete);
}
2.测试创建文件
如果当前文件的文件路径不存在的话,就会出现以下情况:
这里的mk.txt变成了一个文件夹,本来我们想创建一个路径是E:/test/a/b/的名字是mk,类型是txt的文件,但由于路径不存在,File帮我们创建了这个文件夹,如果需要避免,应该想创建文件路径。
@Test
public void testMkdirs() {
// 测试创建文件
// 当文件不存在的时候创建,当文件存在的时候打印文件已存在
// mkdir只能创建一级目录,
// mkdirs可以创建多级目录,也可以创建一级目录
// 所以一般只管使用mkdirs就OK了
// File file = new File("E:/test/a/b/mk.txt");
File file = new File("E:/mk.txt");
if (!file.exists()) {
boolean mkdirs = file.mkdirs();
System.out.println(mkdirs);
} else {
System.out.println("文件已存在!");
}
}
3.
结合FileOutputStream
@Test
public void testFileOutputStream() {
// 测试File结合FileOutputStream
// 当文件路径不存在的时候,创建文件路径,避免FileNotFoundException
// 当 new FileOutputStream(file)的时候,文件就自动创建了(前面已经保证了文件路径的存在)
File file = new File("E:/test/a/b/c/d/fos.java");
File dir = file.getParentFile();
if (!dir.exists()) {
dir.mkdirs();
}
FileOutputStream out = null;
try {
out = new FileOutputStream(file);
out.write(97);
out.write(98);
out.write(99);
out.write(100);
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
} finally {
if (out != null) {
try {
out.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
}