学了好几天了,每天都是只贴一些学习笔记,这个实属无奈。
每天6点起床,7点出门上班,工作5点,下班回家吃饭6点半开始学习到凌晨两点,时间只够看视频,一点练习都做不得,上班时间,有时偷偷的写几句代码,看看论坛上大家遇到的问题,同事也回顾下学习的东西。
今天继续学习笔记吧,周末有时间好好的做做练习,巩固学习的知识。
File类
用来将文件或者文件夹封装成对象
方便对文件与文件夹的属性信息进行操作
File对象可以作为参数传递给流
了解File类中的常用方法
separator与系统有关的默认分隔符
将已有的和未出现的文件或者文件夹封装成对象
File f = new File("a.txt");
File f = new File("c:\\abc", "b.txt");
输出f对象时 只打印文件路径(传入的相对或绝对路径)
File类常见方法
1.创建
boolean createNewFile():在指定位置创建文件,如果该文件已经存在则不创建,返回false,和输出流不一样,输出流一建立就创建文件。而且文件已经存在,会覆盖
boolean mkdir():创建文件夹
boolean mkdirs():创建多级文件夹
2.删除
boolean delete():删除失败,返回假
void deleteOnExit():在程序退出时删除指定文件
3.判断
boolean canExecute():是否可以执行
boolean canRead()
boolean canWrite()
boolean compareTo()
boolean exists():文件是否存在
boolean isFile()
boolean isDirectory()
boolean isHidden()
boolean isAbsolute():是否是绝对路径
在判断文件对象是否是文件或者目录时,必须先判断文件对象封装的内容是否存在,通过exists判断
4.获取信息
getName()
getPath()
getParent():该方法返回的是绝对路径中的文件父目录,如果获取的是相对路径返回null,如果相对路径中有上一层目录,那么该目录就是返回结果
getAbsolutePath()
long lastModified()
long length()
boolean renameTo(File dest):
static File[] listRoots():获取有效盘符
static String[] list():获取目录 调用list方法的file对象必须是封装了一个目录,该目录必须存在
练习:String[] listFiles() 例子
递归
因为目录中还有目录,只要使用同一个列出目录功能的函数完成即可,在列出过程中出现的还是目录的话,还可以再次调用本功能,也就是函数自身调用自身。
这个种表现形式,或者变成手法成为递归。
递归要注意
1.限定条件
2.要注意递归的次数,尽量避免内存溢出
删除带内容的目录
删除原理:
在windows中,删除目录是从里面往外删的
既然是从里往外删除,就需要用到递归
将数据写入硬盘:数据的持久化
Propertities 是 hashtable的子类
也就是说它具备map集合的特点。而且它里面存储的键值对都是字符串
是集合中和IO技术想结合的集合容器
该对象的特点:可以用于键值对形式的配置文件
字节打印流
PrintStream
构造函数可以接收的参数类型
1.file对象,File
2.字符串路径。String
3。字符输出流。OutputStream
4。字符输出流。Wri9ter
字符打印流
PrintWriter
1.file对象,File
2.字符串路径。String
3。字符输出流。OutputStream
4。字符输出流。Writer