簡體   English   中英

在cmd使用Java掃描器

[英]Use java scanner at cmd

如何使用以下命令從cmd讀取數據

我使用了這種方法,直到到達用戶輸入並且調試器進入hasnext並掛起為止,它都可以正常工作

public String readCMD() {
    try {
        Scanner sc =new Scanner(in);
        StringBuilder sb = new StringBuilder();
        String ch ;
        while (sc.hasNext()) {
            ch = sc.next();
            System.out.print(ch);
            sb.append(ch);

        }
        return sb.toString();
    } catch (Exception e) {
        System.out.println(e.getCause());
    }
    return null;
}

嘗試這個

public String readCMD() {
    try {
        Scanner sc = new Scanner(System.in);
        StringBuilder sb = new StringBuilder();
        String ch;
        while (sc.hasNext()) {
            ch = sc.next();
            System.out.print(ch);
            sb.append(ch);

        }
        return sb.toString();
    } catch (Exception e) {
        System.out.println(e.getCause());
    }
    return null;
}

嘗試使用nextLine()

while (!(ch = sc.nextLine()).equals("")) {
     System.out.print(ch);
     sb.append(ch);
}

這樣,您可以循環讀取,直到讀取空字符串為止。

您需要使用某種條件來中斷循環,在下面,如果用戶輸入“ exit”作為輸入,則它將中斷:

public String readCMD() {
    try {
        Scanner sc =new Scanner(in);
        StringBuilder sb = new StringBuilder();
        String ch ;
        while (sc.hasNext()) {
            ch = sc.next();
            System.out.print(ch);
            sb.append(ch);
            if(ch.equals("exit")) {
              break;
            }

        }
        return sb.toString();
    } catch (Exception e) {
        System.out.println(e.getCause());
    }
    return null;
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM