成都网站建设设计

将想法与焦点和您一起共享

如何在Java项目中利用字符流实现一个io编程

如何在Java项目中利用字符流实现一个io编程?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。

创新互联建站专注骨干网络服务器租用十多年,服务更有保障!服务器租用,成都服务器托管 成都服务器租用,成都服务器托管,骨干网络带宽,享受低延迟,高速访问。灵活、实现低成本的共享或公网数据中心高速带宽的专属高性能服务器。

案例1:

读取一个文件并写入到另一个文件中,char[] 来中转。

首先要在E盘下创建一个文本文档,命名为test.txt,输入一些字符串。

public class Demo_5 {

  public static void main(String[] args) {
  
    FileReader fr=null;            //文件取出字符流对象(输入流)  
    FileWriter fw=null;            //写入到文件(输出流)

    try {
      fr=new FileReader("e:\\test.txt");  //创建一个fr对象  
      fw=new FileWriter("d:\\test.txt");  //创建输出对象
      
      char []c=new char[1024];       //读入到内存
      int n=0;               //记录实际读取到的字符数
      while((n=fr.read(c))!=-1){
        //String s=new String(c,0,n);
        fw.write(c,0,n);          
      }
    } catch (Exception e) {
      e.printStackTrace();
    }finally{
    
      try {
        fr.close();
        fw.close();
      } catch (Exception e) {
        e.printStackTrace();
      }
    }    
  }
}

打开D盘的test.txt文件,出现相同的字符串。

案例2:为了提高效率引入了缓冲字符流

依然实现读取一个文件并写入到另一个文件中,直接操作String。

public class Demo_6 {

  public static void main(String[] args) {

    BufferedReader br=null;
    BufferedWriter bw=null;
    
    try{    
      FileReader fr=new FileReader("e:\\test.txt");  //先创建FileReader对象
      br=new BufferedReader(fr);

      FileWriter fw=new FileWriter("d:\\test1.txt"); //创建FileWriter对象
      bw=new BufferedWriter(fw);
      
      String s="";
      while((s=br.readLine())!=null){         //循环读取文件,s不为空即还未读完毕   
        bw.write(s+"\r\n");             //输出到磁盘,加上“\r\n”为了实现换行
      } 
    }catch(Exception e){
      e.printStackTrace();
    }finally{  
      
      try {
        br.close();
        bw.close();
      } catch (Exception e) {
        e.printStackTrace();
      }
    }
  }
}

打开D盘的test1.txt文件,出现相同的字符串。

总结:字节流操作对象byte,字符流操作对象char,缓冲字符流操作对象String。

看完上述内容,你们掌握如何在Java项目中利用字符流实现一个io编程的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注创新互联行业资讯频道,感谢各位的阅读!


当前名称:如何在Java项目中利用字符流实现一个io编程
分享网址:http://chengdu.cdxwcx.cn/article/jpoipd.html