ファイル用のドラッグ&ドロップGUIが動作するJavaプログラムを作成しています。 DnD GUIでドラッグされたすべてのファイルは、ファイル名を保持する文字列配列に格納されます。配列をループし、ファイル名だけを残すためにパスを取り除き、各ループの最後にこのメソッドにファイル名(Scanner用)と目的の出力ファイル名(PrintWriter用)を送信するメソッドがあります。Javaメソッドがファイルを受け取ることができない
public void fileGenerator(String in, String out) {
try {
String current_directory = System.getProperty("user.dir");
Scanner input = new Scanner(new FileReader(current_directory+"/"+in));
PrintWriter output = new PrintWriter(current_directory+"/"+out);
while(input.hasNext()) {
String line = input.nextLine();
output.println(line);
} output.close();
input.close();
} catch (FileNotFoundException e) {
System.out.println(e.getMessage());
}
}
コードが機能していないため、出力ファイルが生成されません。私は "No such file or directory"エラーを完全なパスで取得しています...ターミナルでテストしましたが、正しいパスです。すべての入力をいただければ幸いです。
すべてのJavaソースファイル、クラス、入力ファイルは同じディレクトリにあることに注意してください。
ありがとうございます!
私はちょうど質問を編集しました - 私は注意すべきであったエラーはありません。私はEclipseを使用せず、Geany/Geditを使用するので、非常に簡単です...すべてのファイルが1か所にあり、このジェネレータを呼び出すメソッドはパスを完全に取り除き、ファイル名だけを残します。あなたのコメントをありがとう...あなたはもう考えを持っていますか? – user1062058
この質問を見てください:http://stackoverflow.com/questions/4871051/getting-the-current-working-directory-in-java – MByD
また、空のキャッチブロックによって、スローされたエラーをおそらく逃しますこの方法では – MByD