Java IO
Java IO
1.File类
在 Java 中,File 类是 IO 包中唯一表示与文件本身有关的类,也就是说,如果希望在程序中操作文件和目录,则都可以通过 File 类来完成。File 类定义了一些方法来操作文件,如新建、删除、重命名文件和目录等。File 类不能访问文件内容本身,如果需要访问文件内容本身,则需要使用输入/输出流。
2.RandomAccessFile类
RandomAccessFile 是 Java 输入/输出流体系中功能最丰富的文件内容访问类,它提供了众多的方法来访问文件内容,它既可以读取文件内容,也可以向文件输出数据。由于 RandomAccessFile 可以从任意位置访问文件,所以在只需要访问文件部分内容的情况下,使用 RandonAccessFile 类是一个很好的选择。
RandomAccessFile 对象包含了一个记录指针,用以标识当前读写处的位置,当程序新创建一个 RandomAccessFile 对象时,该对象的文件记录指针位于文件头(也就是 0 处),当读/写了 n 个字节后,文件记录指针将会向后移动 n 个字节。除此之外,RandonAccessFile 可以自由移动该记录指针,既可以向前移动,也可以向后移动。
3.字节流与字符流
(一)字节流:主要是操作byte类型数据,以byte数组为准,主要的操作类 OutputStream类和InputStream类。
OutputStream类(InputStream类)是一个抽象类,使用此类必须通过它的子类实例化对象。如果要操作一个文件,则可以使用FileOutputStream类 ((FileInputStream类),通过向上的自动转型,可以为OutputStream(InputStream类)实例化。
(二)字符流
(三)字节流和字符流的区别
字节流在操作时本身不会用到缓冲区(内存),是于文件本身直接操作,而字符流在操作时使用到缓冲区,通过缓冲区再操作文件。
(四)转换流
(五) BufferedReader和BufferedWrite
所有引用如有侵权请联系删除