java IO章节的总结

时间:2015-01-07 10:04:04
【文件属性】:

文件名称:java IO章节的总结

文件大小:121KB

文件格式:DOC

更新时间:2015-01-07 10:04:04

java IO总结

IO从大的方向上分为字节流和字符流,包括四个抽象类: 1、输入:Reader, InputStream类型的子类(字符,字节) 2、输出:Writer, OutputStream类型的子类(字符,字节) 决定使用哪个类以及它的构造进程的一般准则如下(不考虑特殊需要): 第一,考虑最原始的数据格式是什么:是否为文本? 第二,是输入还是输出? 第三,是否需要转换流:InputStreamReader, OutputStreamWriter? 第四,数据来源(去向)是什么:文件?内存?网络? 首先是字节流: InputStream的实现类(System.in返回一个输入流): 1)ByteArrayInputStream:ByteArrayInputStream的适配源是Byte数组,它有以下构造函数: ByteArrayInputStream(byte[] buf) 创建一个 ByteArrayInputStream,使用 buf 作为其缓冲区数组。 ByteArrayInputStream(byte[] buf, int offset, int length) 创建 ByteArrayInputStream,用byte 数组的第 off 个位置先后的 len 个位置buf 作为其缓冲区数组。 2)FileInputStream:FileInputStream的适配源是File对象,构造函数有: FileInputStream inFirst = new FileInputStream("test.txt");//默认工作站   File f = new File("test.txt"); FileInputStream inSecond = new FileInputStream(f); 3)PipeInputStream:通常用于进程间,构造函数有: PipedInputStream() PipedInputStream(PipedOutputStream out)直接连接到输出流 4)SequenceInputStream:这个类可以将几个输入流串联在一起合并为一个输入流,构造函数有: SequenceInputStream(Enumeration e)枚举类型e中包含了若干个要被串联的输入流 SequenceInputStream(InputStream s1, InputStream s2)先读取s1中数据。再读s2的数据。 以上能够直接对数据进行读和写的流叫节点流,但是直接用这些来操作是比较麻烦的,而且一个字节一个字节的对文件处理,对硬盘的读取和存入对硬盘的损伤是很大的,因此需要对这些节点流进行包装,即外套一些处理流来进行操作,InputStream有以下处理流: 1) BufferedInputStream:带缓冲的输入流,构造函数有: BufferedInputStream(InputStream in)


网友评论

  • 总结的很不错,可是为什么java的接口不以I开头呢,还是C#做的好啊,便于识别
  • 总结地不错,对我很有帮助
  • 不太能看懂~~~