请教高人,看看下面这个很菜的问题该怎么处理 
代码如下(在C盘中已经建立了一个名称为a的文本文件,里面有一些英文字符;一个名称为b的文本文件,里面内容为空。) 
import java.io.*; 
class CopyBytes 

public static void main(String[] args) throws FileNotFoundException, IOException 

//创建2个File类对象 
    File inputFile=new File("c:\\a.txt"); 
    File outputFile=new File("c:\\b.txt"); 
    //创建文件输入/输出资字节流 
    FileInputStream in=new FileInputStream(inputFile); 
    FileOutputStream out=new FileOutputStream(outputFile); 
    int c; 
    //读写文件流中的数据 
    while((c=in.read())!=-1) 
        out.write(c); 
    //关闭流 
     in.close(); 
    out.close(); 


下面是运行时的错误:(在NetBeans环境中) 
Exception in thread "main" java.io.FileNotFoundException: c:\a.txt (系统找不到指定的文件。) 
        at java.io.FileInputStream.open(Native Method) 
        at java.io.FileInputStream. <init>(FileInputStream.java:106) 
        at javaioexam01.CopyBytes.main(Main.java:25) 
Java Result: 1 
怎么回事?

解决方案 »

  1.   

    你看你的c盘根目录的文件名是a,还是a.txt
    如果是a,改为a.txt
      

  2.   

    你在逻辑上有错误~
    FileOutputStream out=new FileOutputStream(outputFile); 
    这个是写向的文件!outputFile 是c:\\b.txt ;这个的意思是向b.txt中写如字母之类的东西;
    而in.read()读取的a.txt   但是你的a.txt里面并没有东西,也没有建立!
      

  3.   

    LZ你的文件的后缀名要设置成显示才好啊!
    由于你没有在文件夹选项里设置
    你的就a.txt其实就是a.txt.txt
    我刚才试了,你的问题就出在这!
      

  4.   

    逻辑上没有错误.
    就是他C盘下面没有b.txt
    程序也会自动建立b.txt.