java 通过bufferedReader和bufferedWriter 拷贝文件

/**
 * @time  2014-8-15 下午05:00:58
 * @author new
 * @function 通过bufferedReader和bufferedWriter 拷贝文件
 *
 */
package com.neusoft.copyfile;

import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;

/**
 *
 */
public class CopyFileByBuffer {

	/**
	 * @param args
	 * @throws Exception
	 */
	public static void main(String[] args) throws Exception {

		String oldFileName="hs_err_pid3420.log";
		String newFileName="copy_"+oldFileName;
		CopyFileByBuffer cfBuffer=new CopyFileByBuffer();
		cfBuffer.CopyFile(oldFileName, newFileName);
		System.out.println("结束");
	}

	/**
	 * @function 通过bufferedReader和bufferedWriter 拷贝文件
	 * @param oldFileName
	 * @param newFileName
	 * @throws IOException
	 */
	public void  CopyFile(String oldFileName,String newFileName) throws IOException{
		//读文件     hs_err_pid3420.log
		File oldFile=new File(oldFileName);
		//写文件
		File newFile=new File(newFileName);
		FileReader fReader=new FileReader(oldFile);
		BufferedReader bReader =new BufferedReader(fReader);

		FileWriter newFWrite=new FileWriter(newFile);
		BufferedWriter bWriter=new BufferedWriter(newFWrite);

		String s=null;
		while ((s=bReader.readLine())!=null) {
			System.out.println(s);
			bWriter.write(s);
			bWriter.newLine();
			bWriter.flush();
		}
		if (bWriter!=null) {
			bWriter.close();
		}
		if (bReader!=null) {
			bReader.close();
		}
		System.out.println("复制文件成功");
	}
}


只要修改文件路径为你的文件路径,就可以实现复制功能了
时间: 2024-09-29 23:03:24

java 通过bufferedReader和bufferedWriter 拷贝文件的相关文章

Java中BufferedReader与BufferedWriter类的使用示例_java

BufferedReaderBufferedReader 是缓冲字符输入流.它继承于Reader. BufferedReader 的作用是为其他字符输入流添加一些缓冲功能. 创建BufferReader时,我们会通过它的构造函数指定某个Reader为参数.BufferReader会将该Reader中的数据分批读取,每次读取一部分到缓冲中:操作完缓冲中的这部分数据之后,再从Reader中读取下一部分的数据. 为什么需要缓冲呢?原因很简单,效率问题!缓冲中的数据实际上是保存在内存中,而原始数据可能是

Java使用字符流拷贝文件出现乱码

Java代码 //      BufferedReader in = null; //      BufferedWriter out = null; Reader in = null; Writer out = null; try { //          in = new BufferedReader(new FileReader(src)); //          in = new BufferedReader(new InputStreamReader(new FileInputSt

Java IO流学习总结四:缓冲流-BufferedReader、BufferedWriter

Java IO流学习总结四:缓冲流-BufferedReader.BufferedWriter 转载请标明出处:http://blog.csdn.net/zhaoyanjun6/article/details/54911237 本文出自[赵彦军的博客] 在上一篇文章中Java IO流学习总结三:缓冲流-BufferedInputStream.BufferedOutputStream介绍了缓冲流中的字节流,而这一篇着重介绍缓冲流中字符流BufferedReader.BufferedWriter.

java中如何拷贝文件到另一个目录下只能使用

问题描述 java中如何拷贝文件到另一个目录下只能使用 在只能使用字节流ByteArrayInputStream和ByteArrayOutputStream 的情况下,如何复制指定路劲的文件夹到指定的路径下 解决方案 /** * 复制单个文件 * @param oldPath String 原文件路径 如:c:/fqf.txt * @param newPath String 复制后路径 如:f:/fqf.txt * @return boolean */ public void copyFile(

java swing拷贝文件进度条

今天写了一个Java swing 进度条的例子项目. 该项目使用maven构建 项目名称:copyfile_progressbar.结构如下:  功能是拷贝文件.界面如下:  该界面是测试界面,如何测试呢?点击菜单中的"测试",见下图:   点击[暂停],可以使进度条暂停:     进度条走完的界面如下:   该项目的功能是拷贝文件,拷贝文件的同时显示进度:   该项目依赖我另外的项目:  

文件拷贝-java如何实现不同服务器之间文件的传递

问题描述 java如何实现不同服务器之间文件的传递 我想要调用一个服务器上的servelet,该servlet会调用.bat的文件,实现将该服务器上 的文本文件传递到另一台服务器上的指定目录下.现在遇到一个技术问题,无法实现文本由一台服务器拷贝到另一台服务器上, 但是以下情况是可以实现的: 1.单独执行.bat文件是可以实现不同服务器之间的拷贝的 2.用服务器调用将文件拷贝到本地也是可以的 3.有说用socket方法解决,但是另一端的服务器是不可以配置java的环境的 解决方案 我当时是这样干的

java使用nio2拷贝文件的示例_java

这个程序只是为了更方便的进行拷贝文件(夹)而创造.1.可以不用新建文件夹,就像windows的复制粘贴一样简单.2.有简单的出错重连机制3.不需要重复拷贝,差异化复制文件.4.拷贝文件夹的时候可以不用复制全路径,只关注需要拷贝的文件夹.5.程序做了简单的必要检查,效率也不算低.6.使用的是7的nio2的新API. 复制代码 代码如下: import java.io.IOException;import java.nio.file.FileVisitResult;import java.nio.f

Java操作Ant压缩和解压文件及批量打包Anroid应用_Android

实现zip/tar的压缩与解压 java中实际是提供了对  zip等压缩格式的支持,但是为什么这里会用到ant呢? 原因主要有两个: 1. java提供的类对于包括有中文字符的路径,文件名支持不够好,你用其它第三方软件解压的时候就会存在乱码.而ant.jar就支持文件名或者路径包括中文字符. 2. ant.jar提供了强大的工具类,更加方便于我们对压缩与解压的操作. 注意事项: 1. 首先说明一下,关于皮肤或者类似于皮肤的Zip包,实际上公司可能会根据自己的规定或需求,自定义压缩包文件的结尾,实

流关闭-BufferedReader与BufferedWriter流这样用不关闭会一直驻留在内存中吗

问题描述 BufferedReader与BufferedWriter流这样用不关闭会一直驻留在内存中吗 下面是代码部分: public static void count() throws IOException { Properties prop = new Properties(); File file = new File("app.ini"); if (!file.exists()) file.createNewFile(); prop.load(new BufferedRea