在看完IO中的字符流读写之后我写了如下程序:
import java.io.*;
class FileCopy 
{
public static void main(String[] args) 
{
try{
FileReader in = new FileReader("D:\\123.txt");
FileWriter out = new FileWriter("D:\\234.txt");
}catch(FileNotFoundException e){
System.out.println("没有找到文件!");
System.exit(-1);
}
try{
int a = null;
while((a=in.read())!=-1)
{
out.write(b);
}
}catch(IOException e){
System.out.println("文件复制错误!");
}
in.close();
out.flush();
out.close();
}
}
但是却没有运行成功...........
不懂,求解

解决方案 »

  1.   

    import java.io.*;public class CopyFile
    {
    public static void main(String[] args){
    CopyFile.copyFile("F://demo//a.jsp","F://b.jsp");
    }public static boolean copyFile(java.io.File filefrom, java.io.File fileto,
    boolean rewrite) {
    if (!filefrom.exists()) {
    System.out.println("文件不存在");
    return false;
    }
    if (!filefrom.isFile()) {
    System.out.println("不能够复制文件夹");
    return false;
    }
    if (!filefrom.canRead()) {
    System.out.println("不能够读取需要复制的文件");
    return false;
    }
    if (!fileto.getParentFile().exists()) {
    fileto.getParentFile().mkdirs();
    }
    if (fileto.exists() && rewrite) {
    fileto.delete();
    }
    /*
    if (!fileto.canWrite()) {
    System.out.println("不能够写将要复制的文件" + fileto.getPath());
    return false;
    }*/
    try {
    java.io.FileInputStream fosfrom = new java.io.FileInputStream(filefrom);
    java.io.FileOutputStream fosto = new FileOutputStream(fileto);
    byte bt[] = new byte[1024];
    int c;
    while ( (c = fosfrom.read(bt)) > 0) {
    fosto.write(bt, 0, c);
    }
    fosfrom.close();
    fosto.close();
    return true;
    }
    catch (Exception ex) {
    ex.printStackTrace();
    return false;
    }}
    public static boolean copyFile(String from, String to) {
    java.io.File filefrom = new java.io.File(from);
    java.io.File fileto = new java.io.File(to);
    return copyFile(filefrom, fileto, true);
    }} 
      

  2.   

    那个 out.write(b)是 out.write(a) .........
      

  3.   

    int a = null; ????这样子也可以么????
      

  4.   

    int a = null;
    你这里就编译不通过了啊。怎么可以运行了。
      

  5.   

    int a=0;
    看下基本类型的默认值
      

  6.   

    恩 我知道啊 好长时间没写Java了 忘记了
    可是我改成了0也不能通过 晕死了.......