\ r \ n(回车)在命令提示符(CMD)中不起作用

时间:2014-05-24 21:05:10

标签: java windows-7 cmd

我有一个Java应用程序,在应用程序中我有这个代码。 (不是我的。)

public static void printProgBar(int percent) {
    StringBuilder bar = new StringBuilder("[");

    for (int i = 0; i < 50; i++) {
        if (i < (percent / 2)) {
            bar.append("=");
        } else if (i == (percent / 2)) {
            bar.append(">");
        } else {
            bar.append(" ");
        }
    }

    bar.append("]   " + percent + "%     ");
    print("\r" + bar.toString());
}

你可以清楚地看到,我有回车。唯一的问题是,当我在命令提示符下运行它时,“\ r \ n”消失了,但它没有完成它的工作,回到行的开头。

1 个答案:

答案 0 :(得分:1)

它将清除您使用其他方法编写的先前值。它将清除仅在当前行中写入的数据。

例如

int bar = 2;
print("Data: \r" + bar.toString());

会打印出来

Data: 
2

'数据:'将在第一行,\r将开始一个新行并在那里写下一个数据。在使用此字符串操纵器之前,我没有看到您编写的任何其他数据。

如果您对此感到困惑,请参阅我测试过的代码示例:

enter image description here

其次所有以\开头的操纵器在执行时都消失了。他们不是写的。但是命令的执行取决于下一个字符。