API方法熟悉
mkdir只能创建当前目录下的文件,mkdirs可以创建多个文件夹,即使不再当前目录也可以进行创建。
文件的遍历必须要判断是否为空和获取的文件数组的长度是否大于0
文件过滤器(知道,了解)
相对路径和绝对路径:
绝对路径:
从盘符开始,是一个完整的路径。例如c://a.txt
相对路径:
在Java代码中是相对于项目目录路径,这是一个不完整的便捷路径,在Java开发中很常用,例如:
a.txt
IO流概述:
可以将这种数据传输操作,看作一种数据的流动,按照流动的方向分为输入Input和输出Output。
Java中的IO操作主要指的是java.io包下的一些常用类的使用,通过这些常用类对数据进行读出(输入
Input)和写出(输出Output)
IO流的分类:
按照流的方向来分,可以分为:输入流和输出流。
按照流动的数据类型来分,可以分为:字节流和字符流。
字节流:
输入流:InputStream
输出流:OutPutStream
字符流:
输入流:Reader
输出流:Writer
OutputStream
使用后记得关闭(close())(尽可能早的关闭)
FileOutputStream
文件内容追加需要加true
FileInputStream
文件加密和解密工具:
任何数据相同^(异或)相同的数字两次,结果都是其本身。
字符编码:
程序员屏幕(1.带鱼屏2.可旋转屏幕)
字节流读取文字:(读取文字时会遇到读取一半的问题)
乱码问题:
在idea中的txt文件采用的是utf-8,记事本不是。
flush刷新管道:
刷新缓存空间,强制把缓存区间的内容写入到文件中。
关闭时会自动刷新,将内容写入到文件中。
字节转换(装饰为)字符流:(使用了装饰者设计模式)
InputStreamReader
参数1.要转换的字节流
参数2.指定编码名称
OutputStreamWriter
Print与BufferredReader
字符输出(打印流) PrintStream PrintWriter(需要刷新管道)
可以将输出流转换成打印流
缓存读取流:将字符输入流转换为带有缓存可以一次读取一行的缓存字符读取流
.readLine()方法读取一行(返回的是读取的内容,到字符流的结尾返回的是null)
收集异常日志:
将产生的错误通过打印流输出到指定的文件中。
properties(永久存储):
.propert文件(Map类型)
存储格式(键=值)
.load方法:加载成程序中的Map集合
.store方法:把键值对变成想要的properties文件(按照相应的格式)
序列化:
所有的实体类都不允许被序列化。
相应的实体类需要实现Serializable接口(标记接口)。
ObjectOutputStream方法
一个实体类中如果引用了另一个实体类,且另一个实体类没有实现Serializable接口,
那么这个实体类也不能被序列化。
try-with-resources:
try(){}try后面的小括号中间添加的对象必须实现了Closeable或者AutoCloseable接口