Java基于字符流形式读写数据的两种实现方法示例

 更新时间:2018年01月09日 08:54:51   作者:菜鸟奋斗史  
这篇文章主要介绍了Java基于字符流形式读写数据的两种实现方法示,结合实例形式分析了java逐个字符读写及使用缓冲区进行读写操作的具体实现技巧,需要的朋友可以参考下

本文实例讲述了Java基于字符流形式读写数据的两种实现方法。分享给大家供大家参考,具体如下:

第一种方式:逐个字符进行读写操作(代码注释以及详细内容空闲补充)

package IODemo;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
public class CopyFileDemo {
 /**
 * @param args
 * @throws IOException 
 */
 public static void main(String[] args) throws IOException {
 FileReader fr=new FileReader("Demo.txt");
 FileWriter fw=new FileWriter("Demo1.txt");
 int ch=0;
 while((ch=fr.read())!=-1){//单个字符进行读取
 fw.write(ch);//单个字符进行写入操作
 }
 fw.close();
 fr.close();
 }
}

第二种方式:自定义缓冲区,使用read(char buf[])方法,此方法较为高效

package IODemo;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
public class CopyFileDemo2 {
 private static final int BUFFER_SIZE = 1024;
 /**
 * @param args
 */
 public static void main(String[] args) {
 FileReader fr = null;
 FileWriter fw = null;
 try {
 fr = new FileReader("Demo.txt");//工程所在目录
 fw = new FileWriter("Demo2.txt");
 char buf[] = new char[BUFFER_SIZE];
 int len = 0;
 while ((len = fr.read(buf)) != -1) {
 fw.write(buf, 0, len);
 }
 } catch (Exception e) {
 // TODO: handle exception
 } finally {
 if (fr != null) {
 try {
 fr.close();
 } catch (IOException e) {
 System.out.println("读写失败");
 }
 }
 if (fw != null) {
 try {
 fw.close();
 } catch (IOException e) {
 System.out.println("读写失败");
 }
 }
 }
 }
}

更多关于java算法相关内容感兴趣的读者可查看本站专题:《Java文件与目录操作技巧汇总》、《Java数据结构与算法教程》、《Java操作DOM节点技巧总结》和《Java缓存操作技巧汇总

希望本文所述对大家java程序设计有所帮助。

相关文章

  • Java之打印String对象的地址

    Java之打印String对象的地址

    这篇文章主要介绍了Java之打印String对象的地址,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-09-09
  • java 和 json 对象间转换

    java 和 json 对象间转换

    这篇文章主要介绍了java 和 json 对象间转换,需要的朋友可以参考下
    2014-03-03
  • idea中JRebel不生效问题及解决方案

    idea中JRebel不生效问题及解决方案

    这篇文章主要介绍了idea中JRebel不生效问题及解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-03-03
  • Java设计模式之Adapter适配器模式

    Java设计模式之Adapter适配器模式

    这篇文章主要为大家详细介绍了Java设计模式之Adapter适配器模式,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-03-03
  • 解决springboot整合cxf启动报错,原因是版本问题

    解决springboot整合cxf启动报错,原因是版本问题

    这篇文章主要介绍了解决springboot整合cxf启动报错,原因是版本问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-07-07
  • Jmeter关联实现及参数化使用解析

    Jmeter关联实现及参数化使用解析

    这篇文章主要介绍了Jmeter关联实现及参数化使用解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-08-08
  • 利用Java截取String字符串的几种常用方法

    利用Java截取String字符串的几种常用方法

    在开发应用中经常会使用到java string,这篇文章主要给大家介绍了关于利用Java截取String字符串的几种常用方法,文中通过代码介绍的非常详细,需要的朋友可以参考下
    2024-05-05
  • 方法参数属性params,@PathVariable和@RequestParam用法及区别

    方法参数属性params,@PathVariable和@RequestParam用法及区别

    这篇文章主要介绍了方法参数属性params,@PathVariable和@RequestParam用法及区别说明,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-10-10
  • Java中Stringbuilder和正则表达式示例详解

    Java中Stringbuilder和正则表达式示例详解

    Java语言为字符串连接运算符(+)提供特殊支持,并为其他对象转换为字符串,字符串连接是通过StringBuilder(或StringBuffer)类及其append方法实现的,这篇文章主要给大家介绍了关于Java中Stringbuilder和正则表达式的相关资料,需要的朋友可以参考下
    2024-02-02
  • Java雪花算法生成分布式id详解

    Java雪花算法生成分布式id详解

    这篇文章主要介绍了Java雪花算法生成分布式id详解,随着业务的增长,有些表可能要占用很大的物理存储空间,为了解决该问题,后期使用数据库分片技术,将一个数据库进行拆分,通过数据库中间件连接,需要的朋友可以参考下
    2024-01-01

最新评论