1. 流和基础知识
1) 一个流是字节的源或目的
2) 二种基本的流是:输入流和输出流
2. InputStream方法
1) 三个基本的read()方法
a. int read(): 从流里读出的一个字节或者-1;
b. int read(byte[]):将数据读入到字节数组中,并返回所读的字节数;
c. int read(byte[], int , int):两个int参数指定了所要填入的数组的子范围。
2) 其它方法
a. void close(): 关闭流,如使用过滤器流,关闭栈顶部的流,会关闭其余的流。
b. int available(): 返回可从流中读取的字节数。
c. skip(long): 丢弃了流中指定数目的字符。
OutputStream方法
1) 三个基本的read()方法
a. void write():
b. void write(byte[]):
c. void write(byte[], int , int):
写输出流。
2) 其它方法
a. void close(): 关闭流,如使用过滤器流,关闭栈顶部的流,会关闭其余的流。
b. int flush(): 允许你强制执行写操作。
3. FileInputStream和FileOutputStream
1) 结点流,使用磁盘文件。
2) 要构造一个FileInputStream, 所关联的文件必须存在而且是可读的。
3) 要构造一个FileOutputStream而输出文件已经存在,则它将被覆盖。
FileInputStream infile = new FileInputStream("myfile.dat");
FIleOutputStream outfile = new FileOutputStream("results.dat");
4. BufferInputStream和BufferOutputStream
过滤器流,可以提高I/O操作的效率
5. DataInputStream和DataOutStream
通过流来读写Java基本类,注意DataInputStream和DataOutputStream的方法是成对的。
6. PipedInputStream和PipedOutputStream
用来在线程间通信.
7. Reader和Writer
1) Java技术使用Unicode来表示字符串和字符,而且提供16位版本的流,以便用类似的方法处理字符。
2) InputStreamReader和OutputStreamWriter作为字节流与字符流中的接口。
3) 如果构造了一个连接到流的Reader和Writer,转换规则会在使用缺省平台所定义的字节编码和Unicode之间切换。
8. 文件
1) 一个文件对象可以代表文件或者目录;
2) File类处理所有磁盘操作;
3) 构造方法:
a. File(File parent, String child):
b. File(String pathName);
c. File(String parent, String child);
d. File(URI uri)
4) 目录分隔
File.separator
9. 随机存取文件
1) 实现了二个接口:DataInput和DataOutput;
2) 只要文件能打开就能读写;
3) 通过文件指针能读写文件指定位置;
4) 可以访问在DataInputStream和DataOutputStream中所有的read()和write()操作;
5) 在文件中移动方法:
a. long getFilePointer(): 返回文件指针的当前位置。
b. void seek(long pos): 设置文件指针到给定的绝对位置。
c. long length(): 返回文件的长度。
10. 串行化
1) 将一个对象存放到永久存储器上称为保持;
2) 只有对象的数据被串行化;
3) 标记为transient关键字的数据不被串行化。
流式I/O和文件
最新推荐文章于 2022-07-03 16:41:32 发布
本文详细介绍了Java中的输入输出流概念及常用方法,包括InputStream和OutputStream的基本操作、缓冲流的使用、数据流的读写、管道流的应用、字符流与字节流之间的转换等。此外还介绍了文件操作类File的使用方法以及随机访问文件的特点。
摘要由CSDN通过智能技术生成