Java 流(Stream)简介:2、Reader 和 Writer
http://blog.csdn.net/YidingHe/article/details/4093982
Java 流(Stream)简介:2、Reader 和 Writer
分类: Java 技术 2009-04-20 11:39 818人阅读 评论 (1) 收藏 举报
介绍了 InputStream 和 OutputStream,接下来介绍 Reader 和 Writer。这两个类其实就是将 InputStream 和 OutputStream 包装了一下。不过它们处理的不是字节(byte),而是字符(char)。如果一个流当中的内容都是文本,那么用 Reader/Writer 处理起来会简单些。下面是一个用 Reader 读取文本文件的例子:
view plain
import java.io.FileReader; import java.io.IOException; import java.io.Reader; /** * 读取文本文件 */ public class ReadTextFileDemo { // 程序入口 public static void main(String[] args) { String path = "c:/boot.ini" ; String content = "" ; try { Reader reader = new FileReader(path); char [] buffer = new char [ 10240 ]; int count; while ((count = reader.read(buffer)) != - 1 ) { content += new String(buffer, 0 , count); } } catch (IOException e) { System.err.println( "读取文件失败。" ); e.printStackTrace(); } System.out.println(content); } }至于如何用 Writer 将文本内容写入文件,这里就不给出例子了,看官自己试着写一下吧。
上面这个例子,仍然不是读取文本文件最常用的方式。Java 提供 BufferedReader,我们通常用它来读取文本文件。下面是一个例子:
view plain
import java.io.BufferedReader; import java.io.FileReader; import java.io.IOException; /** * 用 BufferedReader 读取文本文件 */ public class ReadTextDemo2 { public static void main(String[] args) { String path = "c:/boot.ini" ; String content = "" ; try { BufferedReader reader = new BufferedReader( new FileReader(path)); String line; while ((line = reader.readLine()) != null ) { content += line + "/n" ; } } catch (IOException e) { System.err.println( "读取文件失败。" ); e.printStackTrace(); } System.out.println(content); } }BufferedReader 这种按行读取的方式符合大部分程序的处理逻辑,所以用得最多。对应的 BufferedWriter 类,也请看官自己熟悉一下。
查看更多关于Java 流(Stream)简介:2、Reader 和 Writer的详细内容...
声明:本文来自网络,不代表【好得很程序员自学网】立场,转载请注明出处:http://haodehen.cn/did42687