次のプログラムでは、Hw1_1.javaソースコードから読み込もうとしています。私は毎回FileNotFoundExceptionを取得します(たぶん正当な理由があります)。私は例外を得るのをやめようとしているので、プログラムが完全ではないことを知っています。私は迷っている。FileNotFoundExceptionは私が知っているファイルがディレクトリにあることを示します
誰かが正しい方向に向けることができたら、私はそれを高く評価します。
あなたが値inputFileName
は単なるファイルであれば、あなたのコードに基づいて、異なる実行パス
を持つことができますが、IDEとしてIDEを使用している場合は特に、あなたのコード内でパスの複雑さを意識する必要が
package hw1_1;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.PrintWriter;
import java.util.Scanner;
public class Hw1_1 {
public static void main(String[] args) throws FileNotFoundException {
Scanner console = new Scanner(System.in);
System.out.println("Please enter the name of a java source code file");
String inputFileName = console.next();
String outputFileName = (inputFileName + ".txt");
try {
File inputFile = new File(inputFileName);
Scanner in = new Scanner(inputFile);
PrintWriter out = new PrintWriter(outputFileName);
while (in .hasNextLine()) {
String line = console.nextLine();
out.println(line);
}
in .close();
out.close();
} catch (FileNotFoundException exception) {
System.out.println("File Not Found");
}
}
}
IDEから実行していますか?その場合は、予期しない場所から実行している可能性があります。ファイルへの絶対パスを使ってみてください –
おそらく: 'String line = console.nextLine();'は以下のようになります: 'String line = in.nextLine();' – DevilsHnd
ファイルはJavaプログラムが探している場所にはありませんそれ。現在のディレクトリを見るには 'System.getProperty(" user.dir ")'の値を表示してみてください。また、あなたが探していると思っているものを探していることを確認するために、ファイル名を印刷してください。または、IDEデバッガのコードをステップ実行してください。 –