初学java,下载了Thinking in Java 书中的代码,使用ant编译所有代码,我在家里的机器可以顺利编译通过,但在单位的机器上老有错误:
Exception in thread "main" java.lang.RuntimeException: java.io.FileNotFoundExcep
tion: VowelsAndConsonantsOutput.txt (请求的操作无法在使用用户映射区域打开的文件
上执行。)
        at com.bruceeckel.simpletest.TestStream.openOutputFile(Unknown Source)
        at com.bruceeckel.simpletest.Test.expect(Unknown Source)
        at VowelsAndConsonants.main(Unknown Source)
Caused by: java.io.FileNotFoundException: VowelsAndConsonantsOutput.txt (请求的
操作无法在使用用户映射区域打开的文件上执行。)
        at java.io.FileOutputStream.open(Native Method)
        at java.io.FileOutputStream.<init>(FileOutputStream.java:179)
        at java.io.FileOutputStream.<init>(FileOutputStream.java:131)家里的pc和单位的电脑的OS都是2003 r2 sp2,google 了半天,没有结果,请高手们指教。谢谢

解决方案 »

  1.   

    补充一下,是Thinking in Java 3rd。这个问题貌似不是代码的原因,是不是OS的设置相关?
      

  2.   

    java.io.FileNotFoundExcep
    tion: VowelsAndConsonantsOutput.txt
    提示VowelsAndConsonantsOutput该文件没有找到,你查查看
      

  3.   

    关键是相同的代码在不同的机器上结果不同,一个可以编译另一个不可以。两台机器的jdk都是1.6
      

  4.   

    com.bruceeckel.simpletest.TestStream
       com.bruceeckel.simpletest.Test
      这个作者打好的包,在作者自己的电脑里,里面有很多类,方法,这就是java的一个重要特点:重用,导入这个包后,可以直接使用里面的方法,不用在重新定义
    所以如果你直接使用书上的代码,就会出现上述问题,因为你的电脑上根本就没有这个包
    你可以查一下,书上的源代码
      

  5.   

    这些包肯定是有的,因为我还改过其中的一段检查jdk版本的代码
    “关键是相同的代码在不同的机器上结果不同,一个可以编译另一个不可以”
      

  6.   

    java.io.FileNotFoundException:   VowelsAndConsonantsOutput.txt  
     (请求的操作无法在使用用户映射区域打开的文件上执行。很明显的报错了,找不到VowelsAndConsonantsOutput.txt。
    你的main()方法里,new File("filapath\\VowelsAndConsonantsOutput.txt");
    可能是没有写清楚详细路径吧!
      

  7.   

    再次声明一下:Thinking   in   Java   书中的代码,我在家里的机器可以顺利编译通过,但在单位的机器上老有错误: 
    Exception   in   thread   "main"   java.lang.RuntimeException:   java.io.FileNotFoundExcep 
    tion:   VowelsAndConsonantsOutput.txt   (请求的操作无法在使用用户映射区域打开的文件 
    上执行。) 
                    at   com.bruceeckel.simpletest.TestStream.openOutputFile(Unknown   Source) 
                    at   com.bruceeckel.simpletest.Test.expect(Unknown   Source) 
                    at   VowelsAndConsonants.main(Unknown   Source) 
    Caused   by:   java.io.FileNotFoundException:   VowelsAndConsonantsOutput.txt   (请求的 
    操作无法在使用用户映射区域打开的文件上执行。) 
                    at   java.io.FileOutputStream.open(Native   Method) 
                    at   java.io.FileOutputStream. <init >(FileOutputStream.java:179) 
                    at   java.io.FileOutputStream. <init >(FileOutputStream.java:131) 家里的pc和单位的电脑的OS都是2003   r2   sp2,java的环境配置也都差不多。
      

  8.   

    java.io.FileNotFoundExcep 
    tion:   VowelsAndConsonantsOutput.txt   应该是VowelsAndConsonantsOutput.txt 这个文件没有找到,你试着新建这样一个文件,再试试.
      

  9.   

    IO文件VowelsAndConsonantsOutput.txt 没有找到,你看看编译后的Class文件有没有
    if(有){
       IO文件有错;
    }else {
       程序有错;
    }