菜鸟学习之简单的java-IO流及其转换

   刚开始学习一点IO流,进行了一点简单的总结,分享出来。  
   IO流分为  字节流(**InputStream**、**OutputStream**)、  
   字符  流(**Reader**、**Writer**)两种。
   1.**字节流**  
        字节流用途较广,可用于传输图片等所有的文件(包括二进制  
        文件)。字符也可使用字节流进行传输,只需要进行相应的包  
        装即可(*InputStreamReader*)。
   2.**字符流**  
        字符流应用范围较小,仅可用于字符的传输。
   3.  
        **字节流**(**InputStream**、**OutputStream**)和  
        **字符流**(**Reader**、**Writer**)本身都是抽象类,  
        无法直接生成实例。读写时使用其子类来完成读写操作。  
        例: **FileInputStream**  
            **FileOutputStream**  
            **FileReader**  
            **FileWriter**等等······  
   4.**字节流字符流的包装**  
        我们将IO流比作水管,则进行字节流字符流包装就相当于在水管  
        外面套了一层新的水管来达到传输其他数据类型的目的。  
        例:(**将字节流的键盘读取转换成字符流输出**)  
            **InputStream**比作最基本的水管,现在我们将其转换  
            成字符流的文件读取形式,需要将其套上一层水管,来达到  
            目的,这层水管就是**BufferedReader**  
              
              import java.io.*;
                
              public class Student {
              	      public static void main(String[] args) {
	                          InputStream testOne = System.in;
	                          BufferedReader accept = new BufferedReader(new InputStreamReader(testOne));  
	                          //以InputStreamReader为桥梁将testOne的内容传输进入字符流缓冲区,从而完成转换
	                          String a = null;
	                          try  
	                          //try catch是IO流中必须书写的
	                          {
	                               a = accept.readLine();  
	                               //读取accept缓冲区的内容,readLine()方法会从当前位置向下读取,知道遇到换行符才会停止
                                   System.out.println(a);  
                                   //输出从缓冲区读取到的内容
	                          }catch (IOException e)
	                         {
	                         }
                      }
               }  
                 
               希望对你能有帮助!加油!

你可能感兴趣的:(学习日常小结)