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程序设计有所帮助。

相关文章

  • Set接口深入剖析之HashSet、LinkedHashSet和TreeSet

    Set接口深入剖析之HashSet、LinkedHashSet和TreeSet

    这篇文章主要介绍了Set接口深入剖析之HashSet、LinkedHashSet和TreeSet,LinkedHashSet是HashSet的子类,实现了Set接口,LinkedHashSet底层是一个LinkedHashMap,底层维护了一个数组+双向链表,需要的朋友可以参考下
    2023-09-09
  • 一篇文章带你入门java代理模式

    一篇文章带你入门java代理模式

    这篇文章主要介绍了Java代理模式,结合实例形式详细分析了java基本数据类型、数据类型转换、算术运算符、逻辑运算符等相关原理与操作技巧,需要的朋友可以参考下
    2021-08-08
  • Java实现JSP在Servelt中连接Oracle数据库的方法

    Java实现JSP在Servelt中连接Oracle数据库的方法

    这篇文章主要介绍了Java实现JSP在Servelt中连接Oracle数据库的方法,需要的朋友可以参考下
    2014-07-07
  • java如何自定义注解

    java如何自定义注解

    这篇文章主要介绍了java如何自定义注解问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-02-02
  • Java解析XML的四种方法详解

    Java解析XML的四种方法详解

    XML现在已经成为一种通用的数据交换格式,平台的无关性使得很多场合都需要用到XML。本文将详细介绍用Java解析XML的四种方法
    2012-10-10
  • SpringCloud OpenFeign 自定义响应解码器的问题记录

    SpringCloud OpenFeign 自定义响应解码器的问题记录

    我们在使用 Spring Cloud 微服务的时候,通常将返回结果使用一个JsonResult 类进行封装,本文重点介绍SpringCloud OpenFeign 自定义响应解码器的问题记录,感兴趣的朋友跟随小编一起看看吧
    2024-06-06
  • 远程debug调试入门

    远程debug调试入门

    这篇文章主要介绍了Eclipse的Debug调试技巧大全(总结),小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧吗,希望能给你带来帮助
    2021-06-06
  • Springboot获取jar包中resources资源目录下的文件

    Springboot获取jar包中resources资源目录下的文件

    今天在项目中遇到一个业务场景,需要用到resources资源目录下的文件,本文主要介绍了Springboot获取jar包中resources资源目录下的文件,感兴趣的可以了解一下
    2023-12-12
  • Java中的Map允许有重复元素吗?

    Java中的Map允许有重复元素吗?

    今天小编就为大家分享一篇关于Java中的Map允许有重复元素吗?,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2019-02-02
  • 通过Spring Boot整合Mybatis分析自动配置详解

    通过Spring Boot整合Mybatis分析自动配置详解

    这篇文章主要给大家介绍了关于如何通过Spring Boot整合Mybatis分析自动配置的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用Spring Boot具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2019-07-07

最新评论