共有两种流
1) Byte流: 可传递整数integer,从0到255
2) Character流:传递文本数据,textual数据
2.简介
1) input stream:从源传数据到程序
2) output stream:从程序传数据到一个目的地
3. 如何使用“流”
输入流:
1) 创建一个与数据源相对应的流对象,如 FileInputSteam。
2) 通过流对象的“读”方法从数据源里获得字节。如 FileInputStream 的 read()。
3) 通过方法 close() 完成流的使用。
输出流:
1) 创建与目的地相应的流对象,如BufferedWriter
2) 通过对象的 write() 方法,将信息传到流的目的地
4. 过滤一个流
A filter is a type of stream that modifies the way an existing stream is handled.
使用方法:
1)创建一个与数据源或数据目的地的流
2)把流和一个filter连接在一起
3)对filter进行读写
甚至可以将一个filter与另一个filter连接在一起。
5. java.io包的异常处理:
1)FileNotFound:不能装载时
2)EOFException(end-of-file exception)
这些异常都是 IOException 的子类。
6. Byte流:
6.1 所有Byte流的父类是抽象类 InputStream 或 OutputStream。
1)FileInputStream,FileOutputStream: 存储在磁盘、CD-ROM等上面的文档
2)DataInputStream, DataOutputStream:整数或浮点数
6.2 文档“输入流”:
1)通过 FileInputStream(String) 构建,
2)通过 read() 从“流”里获得字节,
6.3 文档“输出流”
1)通过 FileOutputString(String,boolean) 构建,String指明文档路径,boolean指明是否覆盖原有数据
2)通过 write(int) 将字节写到“流”里
3)通过 close() 关闭“流”
7. Filter流
Filtered streams are streams that modify the information sent through an existing stream.
7.1 Buffered流
输入:
1)BufferedInputStream(InputStream)
2) BufferedInputStream(InputStream,int)
输出:
1)BufferedOutputStream(OutputStream)
2)BufferedOutputStream(OutputStream,int)
注意: write(int)发送单个的字节到“流”,而write(byte[],int,int)则发送指定的字节数组。
8. Character流
字符流可用于任何ASCII 字符集或Unicode字符集。每一个字符在Unicode字符集中都有一个数字的代码。
8.1 “读”文本文档
1)创建一个 FileReader, 然后把它与一个文本文档关联在一起
2)通过 read() 返回一个字符的数字代码
8.2 “写”文本文档
1)FileWriter(String) 或 FileWriter(String,boolean)构建
2)Write(int) 或 write(char[], int, int) 或 write(String, int, int)
9. File 和 Filename filters
9.1 File(String),方法 exists(),renameTo(File),delete(),getName(),getPath(),isDirectory(),listFiles()
9.2 File(String,String),