-1

Eclipse でコマンドライン引数として Java ファイルを渡そうとしています。しかし、毎回、FileNotFoundExceptionエラーがスローされて表示されます - Product.java(システムは指定されたファイルを見つけることができません)。この製品ファイルは、メインの Java ファイルと同じパッケージにあります。言及するもう1つのポイントは、私が使用していることですFileReaderBufferedReader私のプログラムでそのファイルを読み取ります。不足しているものはありますか?

パッケージcom.assign6.keyword.count;

import java.io.BufferedReader;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
import java.util.HashMap;
import java.util.Map;

public class CountKeywords {

    /**
     * @param args
     */
    public static void main(String[] args) {
        // TODO Auto-generated method stub

        String[] accessifiers = {"public", "protected", "private"};

        // Put each keyword in map with key
        Map<String, Integer> theKeyWordCount = new HashMap<String, Integer>();

        for( String str : accessifiers ){
            theKeyWordCount.put(str, 0);
            // Where str is key and 0 is value of Map
        }

        FileReader fr;
        BufferedReader br;
        File file = new File(args[0]);

        System.out.println(file);
        // Open and read the file

        try {

            fr = new FileReader(file);
            br = new BufferedReader(fr);

            String line;

            while( ( line = br.readLine() ) != null ){

                if( line.length() != 0 ){

                    if( theKeyWordCount.containsKey(line) ){

                        theKeyWordCount.put(line, theKeyWordCount.get(line)+1 );
                    }
                }
            }

        } catch (FileNotFoundException e) {
            // File not found
            e.printStackTrace();

        } catch (IOException e) {
            // Not able to read line
            e.printStackTrace();
        }

        System.out.println(theKeyWordCount);

    }// end main method

}
4

2 に答える 2

1

この製品ファイルは、メインの Java ファイルと同じパッケージにあります。

それはあまり関係ありません。代わりに、プログラムを実行Product.javaするときに現在の作業ディレクトリにいる必要があります。(たとえば、プログラムを として実行する場合、を含むフォルダーにいる必要があります。)java -jar path/to/program.jarProduct.javapath

于 2013-07-20T19:58:51.803 に答える