1.file对象
a.创建文件;
a.1将路径描述成一个File对象
File file = new File(“d:/pics2/cc”);//这还只是创建了一个对象而已,并没有把它写入磁盘;
a.2.创建一个文件夹
//在磁盘中写入:
file.mkdir();//不能创建多级目录;
file.mkdirs();//可以创建多级目录;
二者都返回一个布尔值,表示是否创建成功;
注意:如果第一次已经创建成功会返回true,第二次再运行时会返回false,因为不能重复创建;
a.3.创建一个文件(不是文件夹);
File txt = new File(“d:/pics2/cc/a.txt”);
txt.createNewFile();返回一个布尔值,表示是否创建成功;如果第一次已经创建成功会返回true,第二次再运行时会返回false,因为不能重复创建
注意:在windows里,这样表示路径:E:\yaya\hh;但是\在java里是表示转义的,所以用/即可;或者用\表示把\的转义含义给转掉了;但是不推荐,因为lunix里就是用/;
b.判断File对象是否是一个文件夹:
file.isDirectory();返回一个布尔值;
c.判断是否是一个文件:
file.isFile();返回一个布尔值,注意,这个判断的是是否是文件,与b不一样;
d.获取文件的绝对路径:
file.getAbsolutePath();返回一个字符串;//结果:d:/pics2/cc
f.获取文件或文件夹的名字
file.getName();//结果:cc;注意与d区别开;
g.获取上一级目录,返回一个file对象;
file.getParentFile();可以通过打印返回来的file对象的绝对路径或者名字看到上一级目录是什么;
接收用 File pFile = file.getParentFile();
System.out.println(pFile.getAbsolutePath());//结果:d:/pics2
h.同样是获取上一级目录,但是返回的是一个字符串;
接收用:String pFile2 = file.getParent();
System.out.println(pFile2);//结果:d:/pics2;
也可以将它转成一个File对象:
File pFile21 =new File(pFile2);即可;因为new一个File对象只需提供绝对路径即可;
i.获取文件或文件夹的长度,也可以说是大小,单位是字节:
file.length();返回一个long;
j.获取指定目录下的子文件或子文件夹的名称,返回一个String[];
如果file:d:/pics2/cc,即cc文件夹下还有a.txt,b.txt以及一个叫yy的文件夹;那么:
String[] str = file.list();
for(String s:str){
system.out.println(s)
}
打印结果是:a.txt;
b.txt;
yy;
所以这个方法只返回子文件或子文件夹的名称字符串;
k.获取指定目录下的子文件或子文件夹,返回一个File[];
与j相比返回的信息更加全面;
File[] files = file.listFiles();
l.删除文件:
file.delete();会返回布尔值;表示是否删除成功;如果第一次已经删除成功会返回true,第二次再运行时会返回false,因为没有文件可删除;