package Lesson12;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
public class Copy
{
static
{
System.out.println("请输入源、目标文件的完整名称:");
}
public static void main(String[] args)
{
if(args.length!=2)
{
System.out.println("输入的参数不正确.");
System.out.println("例如:源文件路径 目标文件路径");
System.exit(1);
}
File f1=new File(args[0]);
File f2=new File(args[1]);
if(!f1.exists())
{
System.out.println("源文件不存在!");
System.exit(1);
}
InputStream input=null;
OutputStream out=null;
try
{
input=new FileInputStream(f1);
}
catch (FileNotFoundException e)
{
e.printStackTrace();
}
try
{
out=new FileOutputStream(f2);
}
catch (FileNotFoundException e)
{
e.printStackTrace();
}
if(input!=null&&out!=null)
{
int temp=0;
try
{
while((temp=input.read())!=-1)//------->它读取的只是一个字节
out.write(temp);//—————>而它写入的也只是一个字节,那么当复制的
System.out.println("复制完成!");//数据不是一个字节呢,比如是汉字,要正确复制的
}// 它是如何保证不出现乱码?
catch (IOException e)
{
e.printStackTrace();
System.out.println("复制失败!");
}
try
{
input.close();
out.close();
}
catch (IOException e)
{
e.printStackTrace();
}
}
}}
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
public class Copy
{
static
{
System.out.println("请输入源、目标文件的完整名称:");
}
public static void main(String[] args)
{
if(args.length!=2)
{
System.out.println("输入的参数不正确.");
System.out.println("例如:源文件路径 目标文件路径");
System.exit(1);
}
File f1=new File(args[0]);
File f2=new File(args[1]);
if(!f1.exists())
{
System.out.println("源文件不存在!");
System.exit(1);
}
InputStream input=null;
OutputStream out=null;
try
{
input=new FileInputStream(f1);
}
catch (FileNotFoundException e)
{
e.printStackTrace();
}
try
{
out=new FileOutputStream(f2);
}
catch (FileNotFoundException e)
{
e.printStackTrace();
}
if(input!=null&&out!=null)
{
int temp=0;
try
{
while((temp=input.read())!=-1)//------->它读取的只是一个字节
out.write(temp);//—————>而它写入的也只是一个字节,那么当复制的
System.out.println("复制完成!");//数据不是一个字节呢,比如是汉字,要正确复制的
}// 它是如何保证不出现乱码?
catch (IOException e)
{
e.printStackTrace();
System.out.println("复制失败!");
}
try
{
input.close();
out.close();
}
catch (IOException e)
{
e.printStackTrace();
}
}
}}
最好的一种是用文件流FileReader和FileWriter
比如
import java.io.*;
public class Iocopy
{
public static void main(String[] args)
{
FileReader fr=null;
FileWriter fw=null;
int b=0;
try
{
fr=new FileReader("E:/C++视频日记.txt");
fw=new FileWriter("E:/Iocopy.txt");
while((b=fr.read())!=-1)
{
fw.write(b);
}
fr.close();
fw.close();
}catch(FileNotFoundException e)
{
System.out.println("找不到指定的文件!");
System.exit(-1);
}catch(IOException e)
{
System.exit(-1);
}
System.out.println("文件拷贝成功");
}
}望LZ体谅辛苦,给点分