java实现文本复制功能

 更新时间:2020年11月24日 11:15:20   作者:老聂呀  
这篇文章主要为大家详细介绍了java实现文本复制功能,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

本文实例为大家分享了java实现文本复制的具体代码,供大家参考,具体内容如下

*字符流(读,写)

*缓冲字符流(读,写)

文本复制功能:

package cn.yunhe.io;
 
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.io.Reader;
import java.io.Writer;
 
public class FileCopy {
 
 public static void main(String[] args) throws IOException {
 copyMethod();
 }
 /**
 * 文本复制功能
 * 1,找到需要复制的文本路径,创建字符流读取对象
 * 2,将字符流读取对象放入缓冲字符流中,为了方便一行一行读取
 * 3,找到需要复制到的文本路径,创建写入字符流,
 * 4,将写入字符流放在缓冲字符流中,为了方便可以进行字符串的直接写入
 * 5,使用while循环进行对象的读取,每循环一次读一行,将读取的内容存放在定义好的字符串类型中,因为使用
 * 缓冲字符流读取的内容返回的是字符串类型,当返回值为null时,读取完毕
 * 6,在循环中将读取的内容使用写入缓冲字符流进行写入到缓冲字符流中,每写一次,就使用flush()刷新一次
 * 7,最后将所有流关闭
 * @throws IOException
 */
 public static void copyMethod() throws IOException {
 Reader rd=new FileReader("E:/coyp.txt");//创建一个字符流读取对象
 BufferedReader br=new BufferedReader(rd);//创建一个缓冲字符流读取对象,参数传将要缓冲的字符流对象
 Writer wt=new FileWriter("E:/coyp01.txt");//创建一个字符流写入对象
 BufferedWriter bw=new BufferedWriter(wt);//创建一个缓冲字符流写入对象
 String str=null;//按行读取,str存放读取的内容
 while((str=br.readLine())!=null) {//使用while循环每次读取一行,将每次读取的内容存放在str中
 bw.write(str);//使用缓冲字符流写入内容,可以写字符串,将每次读取的内容写入BufferedWriter缓冲字符流中
 bw.flush();//每次进行刷新一次
 }
 //关闭流
 bw.close();
 wt.close();
 br.close();
 rd.close();
 }
}

以上就是本文的全部内容,小编再为大家分享两段代码:Java实现简单文本文件复制

import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
 
public class TextFileCopy {
 public static void main(String[] args) {
 FileReader reader = null;
 FileWriter writer = null;
 try {
 // 创建文件输入输出流
 reader = new FileReader("F:\\电子文档\\各种JDBC连接.txt");
 writer = new FileWriter("F:\\test.txt");
 int flag = 0;
 // 从输入流读取内容使用输出流输出
 while ((flag = reader.read()) != -1) {
 writer.write(flag);
 }
 System.out.println("复制文本成功");
 } catch (Exception e) {
 e.printStackTrace();
 } finally {
 if (reader != null) {
 try {
  reader.close(); // 关闭文件输入流
 } catch (IOException e) {
  // TODO Auto-generated catch block
  e.printStackTrace();
 }
 }
 if (writer != null) {
 try {
  writer.close(); // 关闭文件输出流
 } catch (IOException e) {
  // TODO Auto-generated catch block
  e.printStackTrace();
 }
 }
 }
 }
}

用java实现文件的复制功能:

通过选择合适的下列流进行文件的复制
    a)字符流(FileWriter FileReader)
    b)字节流(FileInputStream,FileOutputStream)
如下需求,选择合适的流完成操作:
文件复制的逻辑:循环的读取旧文件的数据,循环的写出到新文件里。
    1)图片的复制,把用户输入的路径代表的图片复制到同目录,文件名改为原文件名加_new。
例如:test1.png--》new_test1.png

import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
 
/**通过选择合适的下列流进行文件的复制
 a)字符流(FileWriter FileReader)
 b)字节流(FileInputStream,FileOutputStream)
如下需求,选择合适的流完成操作:
文件复制的逻辑:循环的读取旧文件的数据,循环的写出到新文件里。
 1)图片的复制,把用户输入的路径代表的图片复制到同目录,文件名改为原文件名加_new。
例如:test1.png--》new_test1.png
 * 
 * */
public class Test2 {
 
 public static void main(String[] args) {
 copfile();
 }
 public static void copfile(){
 File filein=new File("src\\day17\\test1.png");
 File fileout=new File("src\\day17\\new_test1.png");
 byte[] buffer=new byte[1024];
 int temp=0;
 FileInputStream fis=null;
 FileOutputStream fos=null;
 try {
 fis=new FileInputStream(filein);
 fos=new FileOutputStream(fileout);
 while((temp=fis.read(buffer))!=-1){
 fos.write(buffer, 0, temp);
 }
 fos.flush();
 System.out.println("copy完成!!!");
 } catch (FileNotFoundException e) {
 e.printStackTrace();
 }catch(IOException e){
 e.printStackTrace();
 }finally{
 if(fos!=null){
 try {
  fos.close();
 } catch (IOException e) {
  e.printStackTrace();
 }
 }
 if(fis!=null){
 try {
  fis.close();
 } catch (IOException e) {
  e.printStackTrace();
 }
  }
 
  }
 }
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • 深入解析Spring Bean初始化时和销毁时的扩展点

    深入解析Spring Bean初始化时和销毁时的扩展点

    在Bean进行初始化或者销毁的时候,如果我们需要做一些操作,比如加载和销毁一些资源或者执行一些方法时,那么就可以使用Spring提供的一些扩展,今天主要分享初始化Bean时的三种方式和销毁Bean时的三种方式,需要的朋友可以参考下
    2023-08-08
  • SpringBoot整合WebService的实战案例

    SpringBoot整合WebService的实战案例

    WebService是一个SOA(面向服务的编程)的架构,它是不依赖于语言,平台等,可以实现不同的语言间的相互调用,这篇文章主要给大家介绍了关于SpringBoot整合WebService的相关资料,需要的朋友可以参考下
    2024-07-07
  • SpringCloud使用Ribbon实现负载均衡的流程步骤

    SpringCloud使用Ribbon实现负载均衡的流程步骤

    在微服务架构中,负载均衡是一项关键的技术,它可以确保各个服务节点间的负载分布均匀,提高整个系统的稳定性和性能,Spring Cloud 中的 Ribbon 就是一种负载均衡的解决方案,本文将深入探讨 Ribbon 的原理和在微服务中的应用,需要的朋友可以参考下
    2024-02-02
  • Java8如何将Array转换为Stream的实现代码

    Java8如何将Array转换为Stream的实现代码

    这篇文章主要介绍了Java8如何将Array转换为Stream的实现代码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-09-09
  • Java常用的时间类以及其转化方式

    Java常用的时间类以及其转化方式

    这篇文章主要介绍了Java常用的时间类以及其转化方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-07-07
  • Java实现手写自旋锁的示例代码

    Java实现手写自旋锁的示例代码

    自旋锁是专为防止多处理器并发而引入的一种锁,它在内核中大量应用于中断处理等部分。本文将用Java实现手写自旋锁,需要的可以参考一下
    2022-08-08
  • java 中Executor, ExecutorService 和 Executors 间的不同

    java 中Executor, ExecutorService 和 Executors 间的不同

    这篇文章主要介绍了java 中Executor, ExecutorService 和 Executors 间的不同的相关资料,需要的朋友可以参考下
    2017-06-06
  • Java实时监控日志文件并输出的方法详解

    Java实时监控日志文件并输出的方法详解

    这篇文章主要给大家介绍了关于Java实时监控日志文件并输出的方法,文中通过示例代码介绍的非常详细,对大家具有一定的参考学习价值,需要的朋友们下面跟着小编一起来学习学习吧。
    2017-06-06
  • Java 编程中十个处理异常的建议

    Java 编程中十个处理异常的建议

    这篇文章主要介绍了Java 编程中十个处理异常的建议,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-07-07
  • SpringBoot快速构建应用程序方法介绍

    SpringBoot快速构建应用程序方法介绍

    这篇文章主要介绍了SpringBoot快速构建应用程序方法介绍,涉及SpringBoot默认的错误页面,嵌入式Web容器层面的约定和定制等相关内容,具有一定借鉴价值,需要的朋友可以参考下。
    2017-11-11

最新评论