-1

ユーザーが入力した文をスキャンしたいのですが、単語を個別にスキャンしてから、ユーザーが入力した単語に応じてアクションを実行したいと考えています。

}else if(choice.equals("load")){
  System.out.println("Enter the name of the file:");
  String name = input.next();
  loadFile(name);

私が望むのは、ユーザーが直接「load file.txt」と入力することです

4

2 に答える 2

2

私はあなたのために小さなコードを書こうとしていますが、これはあなたに少し役立つかもしれません

    public class Tester2 {

    /**
     * @param args
     */
    public static void main(String[] args) {

        boolean state = true;
        while(state) {

            System.out.println("Please enter your text");
            Scanner scan = new Scanner(System.in);
            String input = scan.nextLine();
            if(input.contains("load")) {
                String fileName = getFileName(input);
                if(fileName != "" || fileName!= null) {
                    load(fileName);
                }
            }else{

            }

        }

    }

    private static String getFileName(String input) {
        String values[] = input.split("\\s+");
        String fileName = "";
        for(String s : values) {
            if(s.indexOf(".") > 0) {
                fileName = s;
                break;
            }
        }
        return fileName;
    }

}
于 2012-12-18T22:30:29.277 に答える
0

コメントするには長すぎて、最後のコメントの意味がよくわかりません。ここにいくつかのサンプルコードがあります。次のような入力で試してください

  • filename.txt を読み込む
  • ロード・フー・バー・バズ
  • フーを保存
  • なんでもいい ...

    System.out.println("What would you like to do");
    Scanner scanner = new Scanner(System.in);
    String line = scanner.nextLine();
    String[] input = line.split("\\s+");
    if (input[0].equals("load")) {
        for (int i = 1; i < input.length; i++) {
            System.out.println("Token #" + i + " after load: " + input[i]);
        }
    } else {
        System.out.println("You did not enter load, I ignore your input");
    }
    

動作やその他について質問がある場合は、お気軽にコメントを残してください。

于 2012-12-18T23:07:07.483 に答える