Java基于字符流形式读写数据的两种实现方法示例
本文实例讲述了Java基于字符流形式读写数据的两种实现方法。分享给大家供大家参考,具体如下:
第一种方式:逐个字符进行读写操作(代码注释以及详细内容空闲补充)
packageIODemo; importjava.io.FileReader; importjava.io.FileWriter; importjava.io.IOException; publicclassCopyFileDemo{ /** *@paramargs *@throwsIOException */ publicstaticvoidmain(String[]args)throwsIOException{ FileReaderfr=newFileReader("Demo.txt"); FileWriterfw=newFileWriter("Demo1.txt"); intch=0; while((ch=fr.read())!=-1){//单个字符进行读取 fw.write(ch);//单个字符进行写入操作 } fw.close(); fr.close(); } }
第二种方式:自定义缓冲区,使用read(charbuf[])方法,此方法较为高效
packageIODemo; importjava.io.FileReader; importjava.io.FileWriter; importjava.io.IOException; publicclassCopyFileDemo2{ privatestaticfinalintBUFFER_SIZE=1024; /** *@paramargs */ publicstaticvoidmain(String[]args){ FileReaderfr=null; FileWriterfw=null; try{ fr=newFileReader("Demo.txt");//工程所在目录 fw=newFileWriter("Demo2.txt"); charbuf[]=newchar[BUFFER_SIZE]; intlen=0; while((len=fr.read(buf))!=-1){ fw.write(buf,0,len); } }catch(Exceptione){ //TODO:handleexception }finally{ if(fr!=null){ try{ fr.close(); }catch(IOExceptione){ System.out.println("读写失败"); } } if(fw!=null){ try{ fw.close(); }catch(IOExceptione){ System.out.println("读写失败"); } } } } }
更多关于java算法相关内容感兴趣的读者可查看本站专题:《Java文件与目录操作技巧汇总》、《Java数据结构与算法教程》、《Java操作DOM节点技巧总结》和《Java缓存操作技巧汇总》
希望本文所述对大家java程序设计有所帮助。