java.io包提供了用来永久保存对象状态的机制,可处理各种类型的流,如文件流、字节流、字符流等,还提供实现可串行化Serializable接口、可处理对象流。
Java语言提供3种自动生成的标准流。
System.out是标准输出流。
System.in是标准输入流。
System.err是标准异常流。
数据格式:分为文本和二进制两种。对文本格式应用reader和writer类。二进制格式应用InputStream和OutputStream类。
随机访问能力:这种数据存储格式都采用二进制形式。使用随机访问可提高运行效率。
操作是否是对象:如数据本身是对象,使用ObjectInputStream和ObjectOutputStream类。
数据的来源或去处:对数据可以用几种方法输入/输出:文件、字符串、字符数组和套字节。它们都可以将InputStream或Reader作为数据源,OutputStream或Writer作为数据去处。
数据是否需要过滤:数据过滤通过缓冲和检查和两种方法实现。
一个简单的读取txt文件实例:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
InputStream is = null ; BufferedReader br = null ; try { is = am.open(“test.txt”); //可换成任意格式文件 br = new BufferedReader( new InputStreamReader(is)); String line = br.readLine(); StringBuffer sb = new StringBuffer(); while (line != null ) { sb.append(line); sb.append( "n" ); line = br.readLine(); } } catch (IOException e) { e.printStackTrace(); } |