在 Java 中,我們通常使用 System.out.println()
來在控制臺輸出信息。要自定義輸出樣式,可以使用以下方法:
ANSI 轉義碼允許你在控制臺上設置文本顏色、背景顏色和樣式。以下是一些示例代碼:
public class CustomConsoleLog {
public static final String ANSI_RESET = "\u001B[0m";
public static final String ANSI_BLACK = "\u001B[30m";
public static final String ANSI_RED = "\u001B[31m";
public static final String ANSI_GREEN = "\u001B[32m";
public static final String ANSI_YELLOW = "\u001B[33m";
public static final String ANSI_BLUE = "\u001B[34m";
public static final String ANSI_PURPLE = "\u001B[35m";
public static final String ANSI_CYAN = "\u001B[36m";
public static final String ANSI_WHITE = "\u001B[37m";
public static void main(String[] args) {
System.out.println(ANSI_RED + "This text is red!" + ANSI_RESET);
System.out.println(ANSI_GREEN + "This text is green!" + ANSI_RESET);
System.out.println(ANSI_BLUE + "This text is blue!" + ANSI_RESET);
}
}
這將在控制臺上以不同的顏色輸出文本。請注意,并非所有終端和操作系統都支持 ANSI 轉義碼。在某些情況下,這些代碼可能不會產生預期的效果。
有一些第三方庫可以幫助你更輕松地自定義 Java 控制臺輸出樣式。一個流行的選擇是 Jansi。要使用 Jansi,請按照以下步驟操作:
首先,將 Jansi 添加到項目的依賴項中。如果你使用 Maven,可以在 pom.xml
文件中添加以下依賴項:
<groupId>org.fusesource.jansi</groupId>
<artifactId>jansi</artifactId>
<version>2.3.4</version>
</dependency>
然后,你可以使用 Jansi 提供的類和方法來設置控制臺輸出樣式。以下是一個使用 Jansi 的示例:
import org.fusesource.jansi.Ansi;
import org.fusesource.jansi.AnsiConsole;
public class CustomConsoleLog {
public static void main(String[] args) {
AnsiConsole.systemInstall();
System.out.println(Ansi.ansi().eraseScreen().fg(Ansi.Color.RED).a("This text is red!").reset());
System.out.println(Ansi.ansi().fg(Ansi.Color.GREEN).a("This text is green!").reset());
System.out.println(Ansi.ansi().fg(Ansi.Color.BLUE).a("This text is blue!").reset());
AnsiConsole.systemUninstall();
}
}
這將在控制臺上以不同的顏色輸出文本。Jansi 還提供了其他功能,如背景顏色設置、文本裝飾等。你可以查看 Jansi 的文檔以獲取更多信息。
請注意,這些方法可能不適用于所有終端和操作系統。在某些情況下,你可能需要根據目標平臺調整輸出樣式。