• 締切済み

ジャヴァ基礎問題

import java.io.*; public class Email11 { public static void main(String[] argv) throws Exception { String input = "fileContainingEmails.txt"; String output = "copyPasteMyEmails.txt"; BufferedReader cin; cin = new BufferedReader(new InputStreamReader(System.in)); String userInput; System.out.println("Enter input file name [default name: fileContainingEmails.txt]"); userInput = cin.readLine(); if (userInput.equals("")) userInput = input; String name; if (userInput.equals("")) name = output; else name = input; String userOutput; System.out.println("Enter output file name [default name: " + name + " ]"); userOutput = cin.readLine(); if (userOutput.equals("")) userOutput = name; System.out.println("Input FIle : " + userInput); System.out.println("Output FIle : " + userOutput); } } このプログラムでユーザーがインプットファイル名を入力した場合そのファイル名がアウトプットファイルのデフォルトになるという形にしたいのですがどこが間違っていますか? ユーザーがデフォルトのインプットファイル名を選んだ場合デフォルトのアウトプットファイル名が適応されます。

みんなの回答

  • salsberry
  • ベストアンサー率69% (495/711)
回答No.1

> if (userInput.equals("")) > userInput = input; これを実行し終わった時点でuserInputは""ではなくなっています。したがって、その後の > if (userInput.equals("")) > name = output; > else > name = input; では必ずelse側が実行されます。変数outputが使われることはありません。 どう直すかは自分で考えてください。

takokura14
質問者

お礼

解決できました^^ ありがとうございます

関連するQ&A

専門家に質問してみよう