JAVA教程第四讲Java的例外处理和I/O流4.4 |
|
www.nanhushi.com 佚名 不详 |
4.4 I/O 流概述
输入/输出处理是程序设计中非常重要的一部分,比如从键盘读取数据、从文件中读取数据或向文件中写数据等等。
Java把这些不同类型的输入、输出源抽象为流(stream),用统一接口来表示,从而使程序简单明了。
Jdk 提供了包java.io,其中包括一系列的类来实现输入/输出处理。下面我们对java.io包的内容进行概要的介绍。
4.4.1 I/O流的层次
1.字节流:
从InputStream和OutputStream派生出来的一系列类。这类流以字节(byte)为基本处理单位。 ◇ InputStream、OutputStream ◇ FileInputStream、FileOutputStream ◇ PipedInputStream、PipedOutputStream ◇ ByteArrayInputStream、ByteArrayOutputStream ◇ FilterInputStream、FilterOutputStream ◇ DataInputStream、DataOutputStream ◇ BufferedInputStream、BufferedOutputStream
2.字符流:
从Reader和Writer派生出的一系列类,这类流以16位的Unicode码表示的字符为基本处理单位。 ◇ Reader、Writer ◇ InputStreamReader、OutputStreamWriter ◇ FileReader、FileWriter ◇ CharArrayReader、CharArrayWriter ◇ PipedReader、PipedWriter ◇ FilterReader、FilterWriter ◇ BufferedReader、BufferedWriter ◇ StringReader、StringWriter
3.对象流
◇ ObjectInputStream、ObjectOutputStream
4.其它
◇ 文件处理: File、RandomAccessFile;
◇ 接口 DataInput、DataOutput、ObjectInput、ObjectOutput;
4.4.2 InputStream 和OutputStream
1.InputStream
◇ 从流中读取数据: int read( ); //读取一个字节,返回值为所读的字节 int read( byte b[ ] ); //读取多个字节,放置到字节数组b中,通常 //读取的字节数量为b的长度,返回值为实际 //读取的字节的数量 int read( byte b[ ], int off, int len ); //读取len个字节,放置 //到以下标off开始字节 //数组b中,返回值为实 //际读取的字节的数量 int available( ); //返回值为流中尚未读取的字节的数量 long skip( long n ); //读指针跳过n个字节不读,返回值为实际 //跳过的字节数量
◇ 关闭流: close( ); //流操作完毕后必须关闭 ◇ 使用输入流中的标记: void mark( int readlimit ); //记录当前读指针所在位置,readlimit //表示读指针读出readlimit个字节后 //所标记的指针位置才失效 void reset( ); //把读指针重新指向用mark方法所记录的位置 boolean markSupported( ); //当前的流是否支持读指针的记录功能
有关每个方法的使用,详见java API。
2.OutputStream
◇ 输出数据: void write( int b ); //往流中写一个字节b void write( byte b[ ] ); //往流中写一个字节数组b void write( byte b[ ], int off, int len ); //把字节数组b中从 //下标off开始,长度为len的字节写入流中
◇ flush( ) //刷空输出流,并输出所有被缓存的字节 由于某些流支持缓存功能,该方法将把缓存中所有内容强制输出到流中。
◇ 关闭流: close( ); //流操作完毕后必须关闭
4.4.3 I/O中的例外
进行I/O操作时可能会产生I/O例外,属于非运行时例外,应该在程序中处理。如:FileNotFoundException, EOFException, IOException
|
|
|
文章录入:杜斌 责任编辑:杜斌 |
|
上一篇文章: JAVA教程第四讲Java的例外处理和I/O流4.3 下一篇文章: JAVA教程第四讲Java的例外处理和I/O流4.5 |
【字体:小 大】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口】 |
|
|