zoukankan      html  css  js  c++  java
  • Java IO(input output)流<一>

    一.IO流概述

    1.IO流是用来在设备之间的数据传输。

    2.Java中对数据的操作是按流的方式进行的。

    3.分类:

     1)按操作的数据:字节流(早期就有,可传送任何数据)和字符流(ASCII码表,Unicode码表<两字节>)。

     2)按流向:输入流和输出流。

    4.抽象基类

     1)字节流:InputStream,OutputStream

     2)字符流:Reader,Writer

    二.IO流实例

    1.FileWriter类实例

     1    //新建一个Filewriterdemo类
     2 import java.io.*;
     3 
     4 public class FilewriterDemo  {
     5     
     6    public static void main(String []args) throws IOException{
     7        //新建一个FileWriter类,新建了一个文件text.txt
     8        FileWriter fw=new FileWriter("test.txt");
     9        //向内存中写入数据,仅写在了内存中
    10        fw.write("abcde");
    11        //刷新数据,将数据写入文件中
    12        fw.flush();
    13        //可以无限写入
    14        fw.write("haha");
    15 
    16        fw.flush();
    17        //刷新在关闭
    18        fw.close();
    19        }
    20 }

    运行结果

    2.IO异常

     1    //新建一个Filewriterdemo类
     2 import java.io.*;
     3 
     4 public class FilewriterDemo  {
     5     
     6    public static void main(String []args) {
     7        //在try外定义类
     8        FileWriter fw=null;
     9    
    10        try{
    11           //初始化
    12           fw=new FileWriter("test.txt");
    13       
    14           fw.write("abcde");
    15        }
    16        
    17        catch(IOException e){
    18            
    19            System.out.println(e.toString());
    20        }
    21       //在处理异常时尽量将关闭的数据流放入finally
    22        finally{
    23            
    24             try {  
    25                 //如果有多个,则要使用多个判断,且不可放在一个中,如:
    26                 //if(fw!==null&&fw==“”)等
    27                   if(fw!=null)
    28                 
    29                      fw.close();
    30             
    31                 } catch (IOException e) {
    32                 
    33                 System.out.println(e.toString());
    34             }
    35           }
    36        }
    37 }

    3 FileRead类实例

     3.1一次一个字符读

     1 import java.io.*;
     2 public class FileRead {
     3 
     4     public static void main(String[] args) throws IOException{
     5         //新建一个FileReader类
     6         FileReader fd=new FileReader("test.txt");
     7         //当从一个文件中读取数据时,在数据最后会返回一个int型-1来表示结束
     8         int ch=0;
     9         while((ch=fd.read())!=-1){
    10              System.out.println("ch="+(char)ch);
    11         }
    12         /*
    13         while(true){
    14             int ch=fd.read();
    15             //当ch=-1时推出循环
    16             if(ch==-1)
    17                 break;
    18         //输出读到的数据并 强制转化为char类型
    19           System.out.println("ch="+(char)ch);
    20         }
    21         */
    22         //关闭数据流
    23         fd.close();
    24         
    25         }
    26         
    27     }

    3.2从数组中读

     1 import java.io.*;
     2 
     3 public class FileReadStr {
     4 
     5     public static void main(String[] args) throws IOException{
     6          
     7         FileReader fd=new FileReader("test.txt");
     8         //在用数组读数据时,一般将数组定义为1024倍数
     9         char []buf=new char[1024]; 
    10         int num=0;
    11         while((num=fd.read(buf))!=-1){
    12         //从数组的第一个开始到最后一个结束
    13             System.out.println(new String(buf,0,num));
    14         }
    15         
    16          fd.close();
    17     }
    18 
    19 }

    运行结果

  • 相关阅读:
    【bzoj5180】[Baltic2016]Cities 斯坦纳树
    【BZOJ1859】【ZJOI2006】碗的叠放
    【bzoj4589】Hard Nim FWT+快速幂
    【BZOJ1502】【NOI2005】月下柠檬树 simpson 积分
    【loj6437】 【PKUSC2018】 PKUSC 计算几何
    【PKUSC2018】【loj6433】最大前缀和 状压dp
    【pkuwc2018】 【loj2537】 Minmax DP+线段树合并
    多项式求逆元详解+模板 【洛谷P4238】多项式求逆
    【bzoj3684】 大朋友和多叉树 生成函数+多项式快速幂+拉格朗日反演
    【codeforces 623E】dp+FFT+快速幂
  • 原文地址:https://www.cnblogs.com/3WWanXiang/p/4572001.html
Copyright © 2011-2022 走看看