我读出后为什么运行不了,而且好像读少了.为什么!package cute.stream.read;import java.io.*;public class CopyExe { /**
 * @param args
 */
// 拷贝文件
public void iCopyFile(String srcname, String desname) {
FileInputStream isr = null;
FileOutputStream osr = null;
//BufferedInputStream br = null;
//BufferedOutputStream bw = null;
byte[] byteread = new byte[ 1024*20 ];
int i ;
//String s = "";
try {
isr = new FileInputStream(srcname); // 源文件
//br = new BufferedInputStream(isr);
osr = new FileOutputStream(desname); // 目标文件
//bw = new BufferedOutputStream(osr);
while ((i = isr.read(byteread))!= -1) {

i = isr.read(byteread, 0, byteread.length);

osr.write(byteread, 0, i);

} } catch (Exception e) {
e.getMessage();
} finally {
/*try {
br.close(); // 关闭 BufferedReader
} catch (Exception e) {
e.getMessage();
}*/
try {
isr.close(); // 关闭 FileReader
} catch (Exception e) {
e.getMessage();
}
/*try {
bw.close(); // 关闭 BufferedWriter
} catch (Exception e) {
e.getMessage();
}*/
try {
osr.close(); // 关闭 FileWriter
} catch (Exception e) {
e.getMessage();
}
}
} public static void main(String[] args) {
// TODO Auto-generated method stub
String srcname = "h:\\kugoo.exe";
String desname = "i:\\kugoo.exe";
CopyFile aa = new CopyFile();
aa.iCopyFile(srcname, desname);
}}

解决方案 »

  1.   

    后面的main()贴错了.package cute.stream.read;import java.io.*;public class CopyExe { /**
     * @param args
     */
    // 拷贝文件
    public static void iCopyFile(String srcname, String desname) {
    FileInputStream isr = null;
    FileOutputStream osr = null;
    //BufferedInputStream br = null;
    //BufferedOutputStream bw = null;
    byte[] byteread = new byte[ 1024*20 ];
    int i ;
    //String s = "";
    try {
    isr = new FileInputStream(srcname); // 源文件
    //br = new BufferedInputStream(isr);
    osr = new FileOutputStream(desname); // 目标文件
    //bw = new BufferedOutputStream(osr);
    while ((i = isr.read(byteread))!= -1) {

    i = isr.read(byteread, 0, byteread.length);

    osr.write(byteread, 0, i);

    } } catch (Exception e) {
    e.getMessage();
    } finally {
    /*try {
    br.close(); // 关闭 BufferedReader
    } catch (Exception e) {
    e.getMessage();
    }*/
    try {
    isr.close(); // 关闭 FileReader
    } catch (Exception e) {
    e.getMessage();
    }
    /*try {
    bw.close(); // 关闭 BufferedWriter
    } catch (Exception e) {
    e.getMessage();
    }*/
    try {
    osr.close(); // 关闭 FileWriter
    } catch (Exception e) {
    e.getMessage();
    }
    }
    } public static void main(String[] args) {
    // TODO Auto-generated method stub
    String srcname = "h:\\kugoo.exe";
    String desname = "i:\\kugoo.exe";
    //CopyExe aa = new CopyExe();
    iCopyFile(srcname, desname);
    }}
      

  2.   

    while (isr.read(byteread)!= -1) {

    i = isr.read(byteread, 0, byteread.length);

    osr.write(byteread, 0, i);

    }   我一直这么写