首页 > 代码库 > 流操作
流操作
我们经常需要从文件中读取数据,或者储存数据进文件。在java中,将一个对象(可以读入一个字节序列)称作为输入流,将一个对象(可以向其中写入一个字节序列)称作为输出流。在java中,流操作的基础是抽象类InputStream和OutputStream.
InputStream类中有一个抽象方法:
abstract int read();
这个抽象方法的目的是从输入流中读取数据的下一个字节。在继承这个类时,必须实现这个方法。
OutputStream类:
abstract void write(int b);
将指定的字节写入到输出流。
例如,FileInputStream继承InputStream,从文件中的读取字节。但是它只能读取字节和字节数组。如果需要做其它相关的操作,例如从文件中读取java数据类型,例如DataInputStream,这个类的方法可以从流中读取几个字节,解释为你所需要类型的数据。但是它不能从文件中直接读取数据,它需要在读取数据的类的基础之上进行。
java设计了这样的一种机制:首先需要诸如FileInputStream或者URL类中的openStream方法返回的输入流等等,这种可以在文件中获取字节的输入流,然后在此基础上,构建诸如DataInputStream和PrintWriter等类型将字节组装成为更有用的数据类型,它们在原声字节流之上添加了额外的功能。此外,如果想要添加缓存功能,还可以再加上BufferedInputStream。例如:
FileInputStream fin = new FileInputStream("xx.txt"); DataInputStream din = new DataInputStream(fin);
BufferedInputStream bin = new BufferedInputStream(din);
流操作
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。