概述
------- android培训、java培训、期待与您交流! ----------
/*
IO包中比较重要且特殊的一个对象File
流操作的只有数据,数据最基本的体现形式是文件
File类是用来将文件或者文件夹封装成对象,方便对文件或者文件夹的属性信息进行操作
File类的常见方法:
1、创建。
boolean createNewFile():在指定位置创建文件,如果该文件已经存在,则不创建,返回false,
和输出流不一样,输出流一创建就创建文件。即即使文件已经存在。
boolean mkdir():创建目录(文件夹)
例子:File dir=new File("dsd");dir.mkdir();只能创建一级目录
boolean mkdirs():创建多级目录
2、删除。
boolean delete():删除失败返回假
void deleteOnExit():程序结束时删掉文件,即使程序报错也能够删除指定文件
3、判断。
boolean canExecute():
boolean canWrite():
boolean exists():文件是否存在{如果文件存在,流才可以进行操作}
boolean isFile():实际开发一定注意。。是否是文件
boolean isDirectory():是否否目录
在判断文件对象是否是文件或者目录时,必须要先判断该文件封装的内容是否存在,通关过exists判断。
boolean isHidden():文件是否隐藏
boolean isAbsolute():判断文件是否在绝对路径下,即使不存在,只要是绝对路径返回真
4、获取信息。
String getName()
String getPath()
String getParent():返回的是绝对路径中的父目录。如果获取相对路径返回空。如果相对路径中有上级目录,那么该目录就是返回结果
String getAbsolutePath()返回文件绝对路径
long lastModified()
long length()
boolean renameTo():重命名
5、其它
File ListRoots()静态方法,返回文件类型数组。获取有效盘符
String list()返回字符数组,返回某一盘符里的所有文件及文件夹的名称。调用list的
File对象必须是封装了一个目录,该目录必须存在。
练习:要文件夹里所有的.java的文件。
*/
import java.io.*;
class FileDemo
{
public static void main(String[] args)
{
File file=new File("D:\java");
String[]names=file.list(".java");
for(String s:names)
sop(s);
}
//构造方法演示
public static void consMethod()
{
//将sb.txt封装成File对象。可以将存在或者不存在的文件或者文件夹封装成对象。
File file=new File(sb.txt);
File file1=new File("d:\sb2","sb1.txt");
File file0=new File("D:\123");
File file3=new File(file0,"sb2.txt");
sop(file);//File里封装的什么,就打印什么。。
//File.separator跨平台的分隔符=\
}
public static void sop(Object obj)
{
System.out.println(obj);
}
}
/*
需求:遍历目录下文件或者文件夹,包含文件夹中的内容
因为目录中还有目录,只要使用同一个列出目录功能的函数完成即可
再列出过程中出现的还是目录的化,还可以再次调用本功能
也就是函数自身调用自己
这种表现形式,称为递归
递归注意事件:
1.限定条件,相当于循环
2、注意递归的次数,尽量避免内存溢出
*/
import java.io.*;
class FileForDemo
{
public static void main(String[] args)
{
File file=new File("H:\exercise");
showDir(file);
}
public static void showDir(File dir)
{
System.out.println(dir);
File[]files=dir.listFiles();
for(File name:files)
{
if(name.isDirectory())
showDir(name);
else
sop(name);
}
}
public static void sop(Object obj)
{
System.out.println(obj);
}
}
/*
需求:列出某一指定目录下.java文件
*/
import java.io.*;
class FileFilterDemo
{
public static void main(String[] args)
{
listFilesFilterDemo();
}
//返回的是该目录下的文件对象和文件夹对象[File]
public static void listFilesFilterDemo()
{
File dir=new File("D:\java");
File[]files=dir.listFiles();
for(File name:files)
{
sop(name.getName()+":::::"+name.length());
}
}
//过滤指定某目录下文件,返回的是该目录下的文件名称和文件夹名称[String]
public static void listFilterDemo()
{
File dir=new File("D:\java");
String[]arr=dir.list(new FilenameFilter()
{
public boolean accept(File dir,String name)
{
return name.endsWith(".java");
}
});
for(String name:arr)
{
sop(name);
}
}
public static void sop(Object obj)
{
System.out.println(obj);
}
}
最后
以上就是矮小小懒猪为你收集整理的黑马程序员——File类的全部内容,希望文章能够帮你解决黑马程序员——File类所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复