Printfで出力を太字で印刷するにはどうすればよいですか? "[1m testing bold"
は何もしません。
String format = "%-20s %-15s %-20s %-15s %-10s";
System.out.printf(format, "Name", "Group_name", "Java_Prof_Level", "Cpr_Nr", "Gender", "[1m testing bold");
Java System.out
。で太字を印刷することはできません。標準出力ストリームにストリームするだけなので、原則として、書式なしテキストのみです。
ただし、一部のソフトウェアパッケージは、特殊文字シーケンス(いわゆるANSIエスケープシーケンス)を解釈してフォーマットを許可します。
ANSIエスケープシーケンスはエスケープ文字で始まるため、文字列にも追加する必要があることに注意してください。 ("\ u001B [1m I am bold"をお試しください。)
ほとんどのUnix端末は、デフォルトでANSIエスケープシーケンスを解釈します。古いDOS時代には、エスケープシーケンスが機能するためにANSI.SYSを使用する必要がありました。
WindowsおよびEclipseターミナルでは、コードは機能しません。
これは実際に使用されているコンソールの種類によって異なります。 NetbeansやEclipseなどのIDEの場合、フォントに影響を与えることができるかどうかはわかりません。ただし、ほとんどの端末では、次のエスケープ文字が機能します。
String textInBold = "Java_Prof_Level";
System.out.print("\033[0;1m" + textInBold);