码迷,mamicode.com
首页 > 编程语言 > 详细

java中IO流小解

时间:2016-08-28 11:01:41      阅读:157      评论:0      收藏:0      [点我收藏+]

标签:

下面这张图列出了java中一些处理流:

技术分享

java中根据操作对象的不同可以分为:字节流和字符流。

 

首先我们先表示一下什么叫节点流和处理流:

节点流:可以从或向一个特定的地方(节点)读写数据。如FileReader 
 
处理流:是对一个已存在的流的连接和封装,通过所封装的流的功能调用实现数据读写。
如BufferedReader。处理流的构造方法总是要带一个其他的流对象做参数。

 

java字节流

  InputStream和OutputStream是java字节流中输入输出流的祖先。

  FileInputStream和FileOutputStream:

    都为节点流,通过文件的路径名来构造相应的流,如下:

FileInputStream infile = new FileInputStream("xxx.dat");
FileOutputStream outfile = new FileOutputStream("xxx.dat");

  BufferedInputStream和BufferedOutputStream它们是处理流,其作用是提高输入输出的效率。

 

java字符流

  字符流主要是用来处理字符,对应的输入和输出分别称为readers和writers。

  InputStreamReader和OutputStreamWriter:

    在构造这两个类对应的流时,它们会自动进行转换,将平台缺省的编码集编码的字节转换为Unicode字符。

  BufferedReader和BufferedWriter:

    这两个类对应的流使用了缓冲,提高输入输出的效率。这两个也是处理流,常用来对InputStreamReader和OutputStreamWriter进行处理。如:

BufferedReader in = new BufferedReader( new InputStreamReader(new File("xxx")) );

 

  对BufferedReader类,该类的readLine()方法能一次从流中读入一行,但对于BufferedWriter类,就没有一次写一行的方法,所以若要向流中一次写一行,可用PrintWriter类将原来的流改造成新的打印流,PrintWriter类有一个方法println(),能一次输出一行。如: 

PrintWriter out = new PrintWriter(new BufferedWriter( new FileWriter("xxx")));
out.println("Hello World!");
out.close();

 

java中IO流小解

标签:

原文地址:http://www.cnblogs.com/sweat123/p/5814508.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!