写一个方法进行文件的复制

java中实现文件内的复制,需要新建文件的方法:

File file=new File("wubin.txt");

并且没有这个文件,那么需要将这个文件,创造出来:

file.createNewFile();

当然也可以直接在文件流里面直接创造:

FileInputStream  fis=new FileInputStream(“wubin.txt”);

意思是在本目录下创建一个wubin.txt的文件,之后创造一个inputstreamreader去获取内容,再通过一个缓冲的bufferreader去做一个速度的优化:

InputStreamReader isr=new InputStreamReader(fis);

BufferedReader br=new BufferedReader(isr);

最后用br的read方法读取。

那如果我们要将读取到的内容给到一个新的文件,就是说创造一个文件,将文件file里面的内容给到新的文件:

FileOutputStream fos=new FileOutputStream(“wubin1.txt”);

OutputStreamWriter opw=new OutputStreamWriter(fos);

BufferedWriter bw=new BufferedWriter(opw);

最后用bw的write方法写进去。

问题来了,负责一个文件还可以,如果是多个文件进行负责,很繁琐,且麻烦,

于是自己写了一个copy的方法,来使的这样的操作简便话,定义一个新的类,在该类中,定义一个新的方法copy{}:

class copa{

public void copy(File file,File file1,String s1,String s2) {

try {

file=new File(s1);

file.createNewFile();

file1=new File(s2);

file1.createNewFile();

} catch (IOException e2) {

e2.printStackTrace();

}

try {

FileInputStream fis=new FileInputStream(file);

InputStreamReader isr=new InputStreamReader(fis);

BufferedReader br= new BufferedReader(isr);

//shangmians 读出,下面是写入

FileOutputStream fos=new FileOutputStream(file1);

OutputStreamWriter opw=new OutputStreamWriter(fos);

BufferedWriter bw=new BufferedWriter(opw);

char[] b=new char[100];

try {

br.read(b);

// System.out.println(b);

} catch (IOException e) {

e.printStackTrace();

}

try {

bw.write(new String(b));

} catch (IOException e1) {

e1.printStackTrace();

}

try {

bw.close();

br.close();

isr.close();

fis.close();

} catch (IOException e) {

e.printStackTrace();

}

} catch (FileNotFoundException e) {

e.printStackTrace();

}

}

}

新手进行了一下探索,新建方法copy,定义了两个文件夹file,file1,定义了两个文件名为:s1,s2

在main方法中进行调用:

File file=new File("");

File file3=new File("");

copa copa=new copa();

copa.copy(file, file3,"jixixin.txt","chengxia.txt");

System.out.println("成功创建");

这样之后,就会进行成功的复制,实现了一个封装的方法,使文件的复制简单化。

时间: 2024-12-22 23:15:21

写一个方法进行文件的复制的相关文章

写一个方法void sanjiao(int a,int b,int c),判断三个参数是否能构成一个三角形,、。。。。。

.写一个方法void sanjiao(int a,int b,int c),判断三个参数是否能构成一个三角形, 如果不能则抛出异常IllegalArgumentException,显示异常信息"a,b,c不能构成三 角形",如果可以构成则显示三角形三个边长,在主方法中得到命令行输入的三个 整数,调用此方法,并捕获异常. 代码: package exception; import java.util.Scanner; public class SanJiao { public stati

python写一个脚本解析文件

Python写一个脚本解析文件 ----基于Red Hat Enterprise Linux Server release 6.4 (Santiago):python 2.6.6 需求: 1.去掉空行 2.去掉空行后输出到一个新文件 附加需求(排版):1.'-'缩进n个字符 '-'缩进2n个字符 以此类推 2.'-'开头的所有句子输出在一行 '-'开头的句子输出在一行 以此类推 --------------------------------------------分隔线------------

异常处理:写一个方法void triangle(inta,intb,int c),判断三个参数是否能构成一个三角形。

写一个方法void triangle(inta,intb,int c),判断三个参数是否能构成一个三角形.如果不能则抛出异常IllegalArgumentException,显示异常信息:a,b,c "不能构成三角形":如果可以构成则显示三角形三个边长.在主方法中得到命令行输入的三个整数,调用此方法,并捕获异常. import java.util.Arrays;import java.util.Scanner; public class ExceptionTest1 { public

写一个方法,输入两个正整数,输出在两个正整数范围内即被3整除,又被7整除的正整数

import java.util.Scanner;/* * @写一个方法,输入两个正整数,输出在两个正整数范围内即被3整除,又被7整除的正整数. * */public class Test5 { static Boolean boo=false; public static void main(String[] args) { Scanner scanner = new Scanner(System.in); long scan = scanner.nextLong(); long scan1

学习写一个能够将文件复制、解压到指定文件夹中的批处理文件

场景1:afoldersource中有若干文件夹和若干压缩文件,现在将afoldersource中的文件全部复制到afolderdist中. afoldersource: 脚本: @ECHO OFF ##关闭命令回显 echo copy file ##显示一句话 SET sourcepath=E:\afoldersource ##定义源地址 SET destpath=E:\afolderdist ##定义目标地址 rmdir %destpath%\folder /s /q ##删除目标地址中的文

写一个方法输入盘符和文件名,返回文件的绝对路径

java方法如下: public   String  fileRoot(File pf,String filename){   File file = new File(pf+":/");   if(!file.isDirectory()){    return "盘符不存在";   }   if(file.isDirectory()){    File[] file1 = file.listFiles();    for(int i=0;i<file1.le

用java写一个简单的文件拷贝程序吧

代码: public static void copyFile(String srcPath, String destPath) throws IOException { //建立File对象的来源与目的 File src = new File(srcPath); File dest = new File(destPath); //由于只能拷贝文件,所以判定输入流是否为文件 if(!src.isFile()) { System.out.println("只能拷贝文件!"); throw

写一个方法求数组中的最大值,最小值,总和以及平均值。

class Program { /// <summary> /// 求数组中的最大值,最小值,总和以及平均值. /// </summary> /// <param name="nums">输入一个数组</param> /// <returns>返回一个新的数组(max,min,sum,avg)</returns> public static int[] GetMaxMinSumAvg(int[] nums) { i

写一个上传文件

1.新建maven <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM