Java IO 概述

IO

大多数的应用程序都要与外部设备进行数据交换,最多见的外部设备包含磁盘和网络。IO就是指应用程序对这些设备的数据输入与输出,Java语言定义了许多类专门负责各类方式的输入、输出,这些类都被放在java.io包中。html

文件的描述

1、File类

File类是IO包中惟一表明磁盘文件自己的对象,File类定义了一些与平台无关的方法来操做文件。经过调用File类提供的各类方法,可以完成建立、删除文件、重命名文件、判断文件的读写权限权限是否存在、设置和查询文件的最近修改时间等操做。java

2、RandomAccessFile

RandomAccessFile类能够说是Java语言中功能最为丰富的文件访问类,它提供了众多的文件访问方法。RandomAccessFile类支持"随机访问"方式,能够跳转到文件的任意位置处读写数据。要访问一个文件的时候,不想把文件从头读到尾,而是但愿像访问一个数据库同样地访问一个文本文件,使用RandomAccessFile类是最佳选择。数据库

RandomAccessFile对象类中有个位置指示器,指向当前读写处的位置,当读写n个字节后,文件指示器将指向这n个字节后的下一个字节处。刚打开文件时,文件指示器指向文件的开头处,能够移动文件指示器到新的位置,随后的读写将重新的位置开始。缓存

RandomAccessFile类在文件随机(相对于顺序)读取时有很大的优点,但该类仅限于操做文件,不能访问其余得IO设备,如网络、内存映像等。网络

输入/输出

1、字节输入流

输入图片说明

2、字节输出流

输入图片说明

3、字符输入流

输入图片说明

4、字符输出流

输入图片说明

总结一下流类的使用

一、File是一些文件/文件夹操做的源头,File表明的就是文件/文件夹自己,所以不管如何,使用IO的第一步是建议开发者根据路径实例化出一个Filedom

二、考虑使用字符流仍是字节流。操做文本通常使用字符流,即Reader和Writer;操做字节文件使用字节流,即InputStream和OutputStream函数

三、选择使用输入流仍是输出流。把内容从文件读入Java内存使用输入流,即Reader和InputStream;把内容从Java内存读到文件使用输出流,即Writer和OutputStream编码

四、使用字符流使用BufferedReader和BufferedWriter,它们的构造函数中的参数分别是Reader和Writer,所以既能够实例化出FileReader和FileWriter,也能够实例化出InputStreamReader和OutputStreamWriter,做为构造函数的参数传入BufferedReader和BufferedWriter3d

五、FileInputStream和FileOutputStream能够直接操做文件的读写,它们没有作缓存htm

六、ObjectOutputStream和ObjectInputStream,它们分别以OutputStream和InputStream做为构造函数的参数,所以能够实例化出FileOutputStream和FileInputStream并传入

连接

Java IO

Java IO4:字符编码

相关文章
相关标签/搜索