创建和删除文件/目录常用的file类的方法
1.boolean exists():判断文件或目录是否存在
2.boolean createnewfile():创建新文件
3.boolean delete():删除文件
4.boolean mkdirs():递归创建多级目录
5.file getparentfile():获取上级目录
1.创建/删除文件
java" id="highlighter_888908">
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
try { //在d盘demo目录新建文件:test.txt file file = new file( "d:\\demo\\test.txt" ); //如果文件存在,删除,不存在,创建 if (!file.exists()) { //不存在,创建 file.createnewfile(); } else { //存在,删除 file.delete(); } } catch (exception e) { e.printstacktrace(); } |
•创建目录
1
2
3
4
5
6
7
8
9
10
11
|
try { // 在d盘demo目录新建目录"\a\b\c" file file = new file( "d:\\demo\\a\\b\\c" ); if (!file.getparentfile().exists()) { //上级目录不存在,创建上级目录 file.getparentfile().mkdirs(); } file.mkdirs(); } catch (exception e) { e.printstacktrace(); } |
文件的操作
1.string getname():获取文件名
2.long length():获取文件大小,返回字节单位
3.file getparentfile():获取 上级目录的file对象
4.string getparent():获取上级目录路径
5.long lastmodified():最后修改时间
6.boolean isfile():是否是文件
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
|
try { //使用构造方法确定要操作的文件 file file = new file( "d:" +file.separator+ "demo" +file.separator+ "n.o.k.i.a.pptx" ); //获取文件名 string name = file.getname(); system.out.println( "文件名:" +name); //获取文件后缀 system.out.println( "文件后缀:" +name.substring(name.lastindexof( "." )+ 1 )); //获取文件大小 long length = file.length(); //tyte double size = ( double )length / 1024 ; //byte->kb decimalformat format = new decimalformat( "0.00" ); //保留两位小数 system.out.println( "文件大小:" +format.format(size)); //获取上级目录 system.out.println(file.getparentfile()); system.out.println(file.getparent()); //获取最后修改时间 long lastmodified = file.lastmodified(); simpledateformat dateformat = new simpledateformat( "yyyy-mm-dd hh:mm:ss" ); date date = new date(lastmodified); system.out.println(dateformat.format(date)); //是否是文件 system.out.println(file.isfile()); } catch (exception e) { e.printstacktrace(); } |
目录的操作
1.string[] list():获取目录下的所有文件的string表示
2.file[] listfiles():获取目录下的所有文件的file表示
3.boolean isdirectory():是否是目录
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
|
try { file file = new file( "d:" +file.separator+ "demo" ); string[] list = file.list(); for (string s : list) { system.out.println(s); } system.out.println( "-------------" ); //是否是目录 system.out.println(file.isdirectory()); //统计一个目录下子目录和文件的数量 file[] listfiles = file.listfiles(); int filecount = 0 ; //文件数量 int directorycount = 0 ; //目录数量 for (file f : listfiles) { if (f.isfile()) { filecount++; } else { directorycount++; } } system.out.println( "文件:" +filecount+ "个,目录:" +directorycount+ "个" ); } catch (exception e) { e.printstacktrace(); } |
递归输出目录
程序调用自身
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
//递归输出目录信息:目录子目录,文件 public static void print(file file) { //判断是否是目录 if (file.isdirectory()) { //是目录,获取子目录及文件 file[] listfiles = file.listfiles(); if (listfiles != null ) { for (file f : listfiles) { print(f); } } } system.out.println(file); } |
总结
以上所述是小编给大家介绍的java创建删除文件和目录的方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对服务器之家网站的支持!
原文链接:https://blog.csdn.net/liruli/article/details/80191254