1.什么是IO技术:
解释:IO技术其实就是用来解决设备与设备之间的数据传输问题。例如从内存到硬盘、从硬盘到内存等
2.IO知识点宏观了解:
-2.1字节流:
---2.1.1什么是字节流:
解释:字节流读取文件中的二进制数据,并且读取到二进制数据后,不会进行任何的处理。
---2.1.2输入字节流:
--------InputStream:抽象类
--------------------FileInputStream:让程序读取文件的字节流。
--------------------BufferedInputStream:缓冲输入字节流,该类内部实现了一个8KB的字节数组而已。该类出现的目得是为了提高读取文件数据的效率。
---2.1.3输出字节流:
-------OutputStream:抽象类。
-------------------FileOutputStream:从程序向文件中写入字节流。
-------------------BufferedOutputStream:缓冲输出字节流。
注意:这里的输入与输出都是相对程序而言的,就是输入也是向程序输入,输出也是从程序输出。
-2.2字符流:
解释:字符流也是读取文件中的二进制数据,不过会把这些二进制数据转换成我们能识别的字符。字符流=字节流+解码
---2.2.1输入字符流:
--------Reader:所有输入字符流的基类
-------------------- FileReader:读取文件的输入字符流
-------------------- BufferedReader:缓冲输入字符流,提高文件读取字符的效率,内部实现了一个8192个长度的字符数组。
---2.2.2输出字符流:
--------Writer:所有输出字符流的基类
-------------------- FileWriter
-------------------- BufferedWriter
3.路径问题:
-3.1路径分割符:
作用:使上下级文件夹分开(白痴了)
应用:在Windows中分隔符为'\',在Unix/Linux中分隔符为'/'。跨平台的目录分隔符:File.separator。这个分割符,是虚拟机根据当前系统的环境,设置的分隔符。
转义:如果是使用"\",则需要进行转义,写为"\\"才可以,如果是两个"\",则写为"\\\\"。
-3.2绝对路径:
该文件在硬盘上的完整路径。绝对路径一般是以盘符开头的。
-3.3相对路径:
资源文件相对于当前程序所在的路径。
例:
. 代表当前路径
.. 代表上一级路径
注意的是如果程序当前所在路径与资源文件的路径根本就不在同一个磁盘下,是无法写相对路径的。