File
代表文件或者目录的类
构造函数
File(File parent,String child)---代表了指定父目录下的指定的子文件或者子目录
File(String pathname)---代表了指定路径对应的文件或者目录对象
重要方法
创建
createNewFile()---只能用来创建文件,并且一次只能创建一个文件,要求文件存储的目录必须真实存在
mkdir()---只能用来创建目录,不能用来创建多层目录
mkdirs()---创建多层目录
删除
delete()---用来删除文件或者目录。如果目录下有子文件或者子目录,则删除失败--直接从计算机中移除,不能撤销删除
设置
renameTo(File dest)---重命名指定的文件
setLastModified(long time)---设置文件的最后一次修改时间
setReadable(boolean b)---设置文件是否可读
setReadOnly()---设置文件为只读
获取
listFiles()---获取指定目录下的子目录和子文件对象组成的数组
getName()---获取文件的名字
getParent()---获取父目录的路径字符串
lastModified()---获取最后一次修改时间
判断
canRead()---判断文件是否可读
canWrite()---判断文件是否可写
isHidden()---判断file是否是一个隐藏文件
isAbsolute()---判断是否是一个绝对路径
isDirectory()---判断这个file对象是否是一个目录
isFile()---判断这个file对象是否是一个文件
exists()---判断file在计算机上是否真实存在
路径
绝对路径:以/或者盘符开头的路径---直接跳转到指定的路径
相对路径:不以/或者盘符开头的路径---相对路径以当前路径作为基准进行计算
读取文件夹下的文件并输出
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
27
28
29
30
31
32
|
public static void main(String[] args) throws IOException {
// TODO Auto-generated method stub
String dirname= "/tmp" ; //文件路径
File f1= new File(dirname); //创建一个文件对象,指定文件路径
if (f1.isDirectory()) { //判断此文件是否为文件夹
System.out.println( "目录/" +dirname);
String s[]=f1.list(); //将f1下的文件放入数组中
for ( int i = 0 ; i < s.length; i++) { //遍历这个数组,每个文件判断一次
File file= new File(dirname+ "/" +s[i]); //创建文件对象
if (file.isDirectory()) { //判断是否为文件夹
System.out.println(s[i]+ "是一个目录" );
} else {
System.out.println(s[i]+ "是一个文件" );
try {
//已经判断是文件,就可以用流来打开这个文件输出
FileInputStream fil= new FileInputStream(dirname+ "/" +s[i]+ "" ); //创建文件输入流对象,并指定文件的路径
InputStreamReader iStreamReader= new InputStreamReader(fil); //创建字符输入流,将文件内容传入
StringBuffer sBuffer= new StringBuffer(); //创建字符接收
while (iStreamReader.ready()) { //。。循环读取
sBuffer.append(( char )iStreamReader.read()); //将内容添加到字符串变量中
}
System.out.println(sBuffer.toString()); //输出
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
} else {
System.out.println(dirname+ "不是一个目录" );
}
}
|
以上就是java中File的实例详解,如有疑问请留言或者到本站社区交流讨论,感谢阅读,希望能帮助到大家,谢谢大家对本站 的支持!