Java IO流 File类的常用API实例
•File类
1.只用于表示文件(目录)的信息(名称、大小等),不能用于文件内容的访问。
packagecn.test;
importjava.io.File;
importjava.io.IOException;
publicclassDemo16{
publicstaticvoidmain(String[]args){
Filefile=newFile("F:\\javaio");
//文件(目录)是否存在
if(!file.exists()){
//创建目录
file.mkdir();//file.mkdirs();
}else{
//文件(目录)删除
file.delete();
}
//是否是目录如果是目录返回true,如果不是目录或目录不存在返回false
System.out.println(file.isDirectory());
//是否是文件
System.out.println(file.isFile());
//Filefile2=newFile("F:\\java\\日记1.txt");
Filefile2=newFile("F:\\javaio","日记2.txt");
if(!file2.exists()){
try{
//创建文件
file2.createNewFile();
}catch(IOExceptione){
e.printStackTrace();
}
}else{
file2.delete();
}
System.out.println(file);
System.out.println(file.getAbsolutePath());//返回绝对路径
System.out.println(file.getName());//目录名称
System.out.println(file2.getName());//文件名称
System.out.println(file.getParent());//父级目录的路径
System.out.println(file.getParent());//父级目录的路径
}
}
2.遍历目录
packagecom.test.io;
importjava.io.File;
importjava.io.IOException;
/**
*File类的常用操作
*@authorAdministrator
*
*/
publicclassFileUtils{
/**
*列出指定目录下(包括其子目录)的所有文件
*@paramdir
*@throwsIOException
*/
publicstaticvoidlistDirectory(Filedir)throwsIOException{
if(!dir.exists()){
thrownewIllegalArgumentException("目录"+dir+"不存在");
}
if(!dir.isDirectory()){
thrownewIllegalArgumentException(dir+"不是目录");
}
/*String[]filenames=dir.list();//返回的是字符串数组,列出当前目录下的子目录和文件(不包含子目录下的内容)
for(Stringstring:filenames){
System.out.println(dir+"\\"+string);
}*/
//如果要遍历子目录下的内容,就需要构造File对象做递归操作
File[]files=dir.listFiles();//返回的是直接子目录(文件)的抽象
if(files!=null&&files.length>0){
for(Filefile:files){
if(file.isDirectory()){
//递归
listDirectory(file);
}else{
System.out.println(file);
}
}
}
}
}
以上所述是小编给大家介绍的JavaIO流File类的常用API实例,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!