我如何打印出具有缩进的代码以实际具有缩进?

时间:2019-03-28 02:02:56

标签: java printing

我需要打印出代码,并且缩进是正确的,但其所有打印都应在该行的开头。

public static void printData(Scanner fileScanner) {

        int lineNumber = 0;

        while (fileScanner.hasNextLine()) {

            System.out.println(lineNumber + ":    " + fileScanner.nextLine());

            lineNumber = lineNumber + 1;
        }
        System.out.println("\n" + "\n" + "Cross-Reference Index");

}

这会打印出从行首开始的所有代码,但是我希望它看起来像实际的代码一样。

1 个答案:

答案 0 :(得分:0)

扫描仪可能是完成此工作的错误工具。 Scanner的要点是将输入分成“令牌”,通常由空格分隔。听起来,即使nextLine也会跳过前导空格。

尝试使用BufferedReader

顺便说一句,您可能希望将行号字段设置为固定宽度。试试

  String.format("%-7d:", lineNumber);

将导致数字左对齐,并用空格填充到7的宽度,然后加冒号。 (建议使用长度为8的倍数的前缀,以防出现硬标签)