0

次のプログラムでjava.io.FileNotFoundExceptionが発生するのはなぜですか?

import java.io.*;

class FisDemo {

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

        FileInputStream fis=new FileInputStream("abc.txt");
/* Here we are accessing file abc.txt statically. i.e abc.txt must exist in current class directory */

        int  data;

        while(( data=fis.read())!=-1){
            System.out.println((char)data);
      // here we are casting, because return type of read() is int
        }
    }
}
4

4 に答える 4

2

プログラムはabc.txtファイルを見つけることができません。多分それはあなたの出力/ビンフォルダに存在しません。ファイルがsrcフォルダー/resourceフォルダーにあるか、アプリケーションのビルド後に出力フォルダーにコピーする必要があるかは、IDEによって異なります。

于 2012-07-01T18:24:29.670 に答える
2

FileInputStream fis = new FileInputStream( "abc.txt");

おそらくあなたは悪いfile pathです。
したがって、最初にファイルの場所を確認してから、正しいパスを追加する必要があります。

また、Javaでファイルパスを作成する方法またはファイルパスを作成する方法も参照してください。

于 2012-07-01T18:22:33.447 に答える
1

その理由は、abc.txtが(現在のディレクトリに)存在しないためです。

FileInputStream fis=new FileInputStream("abc.txt");

ファイルのフルネームを指定してください

    String fileFullName="/home/abc.txt";
    FileInputStream fis=new FileInputStream(fileFullName);

そして、はい、あなたの2番目の質問に対する答えです。

于 2012-07-01T18:22:02.057 に答える
0

ファイルが現在のJavaファイルディレクトリに存在しません。そこで作成してから試してください。

于 2012-07-02T12:38:41.510 に答える