zoukankan      html  css  js  c++  java
  • JavaIO中的Reader和writer

    1.reader
    
    package com.io.Reader;
    
    import java.io.BufferedReader;
    import java.io.FileInputStream;
    import java.io.FileNotFoundException;
    import java.io.InputStreamReader;
    
    public class InputStreamReaderTest {
    
     /**InputStreamReader类的用法 ,主要的是用于把 字节流改变成字符流
      * @param args
      * @throws FileNotFoundException 
      */
     public static void main(String[] args) throws Exception {
      // TODO Auto-generated method stub
      InputStreamReader isr=new InputStreamReader(new FileInputStream("D:/Zhou.txt"),"utf-8");
      //int data;
      //while((data=isr.read())!=-1){
      // System.out.print((char)data);
      //}
      
      
      //budderedReader类
      BufferedReader br=new BufferedReader(isr);
      System.out.println(br.readLine());
      isr.close();
     }
    
    }
    
    
    
    package com.io.Reader;
    
    import java.io.IOException;
    import java.io.StringReader;
    
    public class StringReaderTest {
    
     /**StringReader的用法 
      */
     public static void main(String[] args) throws IOException {
      // TODO Auto-generated method stub
      StringReader reader=new StringReader("ni hao 好");
      int data;
      while((data=reader.read()) != -1){
       System.out.println((char)data+" ");
       
      }
      reader.close();
     }
    }
    
    
    
    2.writer
    
    package com.io.writer;
    
    import java.io.*;
    
    public class FileUtil {
    
     /**copy文件的类 字符流的运用
      * @param args
      * @throws Exception 
      */
     public void readFile(String fileName) throws Exception{
      readfile(fileName, null);
     }
     
     public void readfile(String fileName,String charsetName) throws Exception{
      InputStream in=new FileInputStream(fileName);
      InputStreamReader isr=null;
      if(charsetName==null){
       isr=new InputStreamReader(in);
      }else{
       isr=new InputStreamReader(in,charsetName);
      }
      
      BufferedReader br=new BufferedReader(isr);
      String data;
      while((data=br.readLine()) != null){
       System.out.println(data);
      }
      
      br.close();
     }
     
     public void copyFile(String from,String charsetFrom,String to,String charsetTo) throws Exception{
      InputStream in=new FileInputStream(from);
      InputStreamReader reader;
      if(charsetFrom == null){
       reader=new InputStreamReader(in);
      }else{
       reader=new InputStreamReader(in,charsetFrom);
      }
      
      BufferedReader br=new BufferedReader(reader);
      
      OutputStream out=new FileOutputStream(to);
      OutputStreamWriter write=new OutputStreamWriter(out,charsetTo);
      BufferedWriter bw=new BufferedWriter(write);
      PrintWriter pw=new PrintWriter(bw);
      String data;
      while((data=br.readLine()) !=null){
       pw.println(data);
      }
      
      pw.close();
      br.close();
     }
     
     public static void main(String[] args) throws Exception {
      // TODO Auto-generated method stub
      FileUtil fileUtil=new FileUtil();
      
      fileUtil.readFile("D:/Zhou.txt");
      fileUtil.copyFile("D:/Zhouhai.txt", "utf-8", "D:/Zhou.txt", "utf-8");
      fileUtil.readFile("D:/Zhou.txt");
     }
    
    }
  • 相关阅读:
    支付宝接口相关整理
    诡异的 "password取回" 邮件问题
    剑指 offer代码解析——面试题39推断平衡二叉树
    女程序猿做了个梦,各路大神惊现神级评论!
    Mac: Android studio+VirtualBox+Genymotion
    lua 中pairs 和 ipairs差别
    機器學習基石 (Machine Learning Foundations) 作业1 Q15-17的C++实现
    怎样获取HTML5视频的持续时间
    Android之本地相冊图片选取和拍照以及图片剪辑
    19_Android中图片处理原理篇,关于人脸识别站点,图片载入到内存,图片缩放,图片翻转倒置,网上撕衣服游戏案例编写
  • 原文地址:https://www.cnblogs.com/shaoshao/p/3355317.html
Copyright © 2011-2022 走看看