File是io包里的一个路径封装类。她不关心文件的内容,只关心文件的周边信息。
-----------------------------------------
File的静态属性或方法:
File.separator;返回一个字符串内容,\或者/
比方 我的windows上的是\。
-----------------------------------------
File.listRoots( ); 方法是列出根目录,返回是File[ ] 数组类型。
-----------------------------------------
createTempFile方法是创建临时文件,参数是传入String的前缀和后缀。或者传入String的前缀和后缀,还有File类型的参数是按照你指定的路径存储临时文件。
-----------------------------------------
File的构造器:
1.可以传入String类型的路径,得到File封装对象
2.可以传入两个String类型,她会把这个两个String路径组合,然后返回一个File路径封装对象。
3.可以传入一个File对象,和一个String类型参数,她会这这个File对象和String参数组合,然后返回一个File对象。
4.可以传入一个URI参数,返回一个File对象。
-----------------------------------------
常用方法:
-----------------------------------------
getName 得到文件名称
getParent 得到上级目录 返回String类型
getParentFile 得到上级目录 返回File类型
getPath 设置路径
isAbsolute 方法 询问file对象中设置的是不是绝对路径,返回boolean 类型
getAbsolutePath 绝对路径获得,返回String类型
getAbsoluteFile 绝对路径获得,返回File类型
-----------------------------------------
询问方法:
canRead 是否可读
canWrite 是否可写
isHidden 是否是隐藏
exists 路径是否存在
isDirectory 判断描述的是不是夹子路径
isFile 判断描述的是不是文件路径
lastModified 最后修改时间,返回是long 类型
length 返回文件长度 如果是夹子就返回0
toURI 返回toURI对象
createNewFile 返回值 true 创建成功 false 已经有了,如果抛异常 你没有权限创建
delete 立即删除文件和空夹子
deleteOnExit 程序结束之前删除文件和空夹子,程序正常关闭才可以发挥
mkdir 创建一个夹子
mkdirs 批量夹子创建
renameTo 移动文件,改文件名字
-----------------------------------------
列目录下的内容:
list() 返回String[ ]类型
listFiles() 返回File[ ]类型
-----------------------------------------
递归遍历
public static void soFile(File file){ if(file.isFile()){ System.out.println(file.getPath()); }else{ File[] files=file.listFiles(); if(files!=null){ for (File file1 : files) { soFile(file1); } } } }