首页 > 代码库 > IO流(二)

IO流(二)

一.IO流概述

     1.定义:Java的IO流是实现输入输出的基础,它可以方便地实现数据的输入/输出操作。

     2.流的分类:

               (1)按流向来分:输入流和输出流

               (2)按操作的数据来分:字节流和字符流

               (3)按流的角色来分:节点流和处理流

二.IO流类图

   常用流分类:

   通常来说,字节流的功能比字符流强大,因为计算机里所有的数据都是二进制的,而字节流可以处理所有的二进制文件,但如果使用字节流来处理文本文件,则需要将字节转换为字符,这增加了编程复杂度。所以有这样一个规则:如果操作的内容是文本,则考虑使用字符流,如果操作的内容是二进制内容,则应考虑使用字节流。

三.常用流介绍

     1.转换流:输入/输出流体系中还提供了两个转换流,这两个转换流用于实现将字节流转换成字符流。

                    InputStreamReader将字节输入流转换成字符输入流,OutputStreamWriter将字节输出流转换成字符输出流。

 1 public class InputStreamReaderDemo { 2     public static void main(String[] args) { 3         // 将标准字节输入流转换为字符流 4         InputStreamReader reader = new InputStreamReader(System.in); 5         // 将字符流进一步包装成缓冲流 6         BufferedReader buffer = new BufferedReader(reader); 7         String line = null; 8         try { 9             // System.out.println("请输入:");10             while ((line = buffer.readLine()) != null) {11 12                 if ("exit".equals(line)) {13                     System.exit(1);// 读取到exit,程序退出14                 }15                 System.out.println("输出内容:" + line);16             }17         } catch (IOException e) {18             // TODO Auto-generated catch block19             e.printStackTrace();20         }21     }22 }

 

IO流(二)