在控制台以特定颜色输出字符串。

huangapple go评论65阅读模式
英文:

Output a String to console with a specific color

问题

看这段简单的代码:

var name = "Alex"
println(name)

是否有办法在不改变 println 命令的情况下给字符串赋予一种颜色?换句话说,只有 name 变量可以显示为(比如)绿色,而不是默认的白色。

英文:

Look at this simple piece of code:

var name = "Alex"
println(name)

Is there a way to assign a color to the string without making changes in println command?
In other words, only the name variable could be shown in (say) green color instead of default white color.

答案1

得分: 3

在典型的控制台环境中,输出文本的颜色由控制台自身控制,不能直接由代码操控。然而,您可以通过利用一些控制台识别的特殊格式化转义序列来实现彩色输出。

以下是一个示例,演示如何使用ANSI转义序列将name变量以绿色打印出来:

val name = "\u001B[32mAlex\u001B[0m"
println(name)

在上述代码中,\u001B[32m是将颜色设置为绿色的转义序列,而\u001B[0m是将颜色重置为默认值的转义序列。通过将name变量用这些转义序列包围起来,控制台应该会解释它并以绿色显示文本。

请注意,ANSI转义序列的有效性可能取决于所使用的控制台或终端模拟器。建议在目标环境中测试代码,以确保兼容性和期望的输出。

英文:

In a typical console environment, the color of the output text is controlled by the console itself and cannot be directly manipulated by the code. However, you can achieve colored output by utilizing special formatting escape sequences that are recognized by some consoles.

Here's an example of how you can use ANSI escape sequences to print the name variable in green color:

val name = "\u001B[32mAlex\u001B[0m"
println(name)

In the above code, \u001B[32m is the escape sequence for setting the color to green, and \u001B[0m is the escape sequence for resetting the color to the default. By surrounding the name variable with these escape sequences, the console should interpret it and display the text in green color.

Please note that the effectiveness of ANSI escape sequences may vary depending on the console or terminal emulator being used. It's recommended to test the code in the target environment to ensure compatibility and desired output.

答案2

得分: 3

你可以使用ANSI转义码来给字符串添加颜色。要打印一个绿色的字符串,使用"\u001b[32m"

fun main() {
    val greenColor = "\u001b[32m"
    val reset = "\u001b[0m" // 重置颜色为默认值
    val name = greenColor + "Alex" + reset // 仅对Alex添加绿色
    println(name)
}

获取更多信息,请阅读 https://en.wikipedia.org/wiki/ANSI_escape_code#Colors

英文:

You can use ANSI escape code to add a color to strings. To print a green string, use "\u001b[32m".

fun main() {
    val greenColor = "\u001b[32m"
    val reset = "\u001b[0m" // to reset color to the default
    val name = greenColor + "Alex" + reset // Add green only to Alex
    println(name)
}

For more information, read https://en.wikipedia.org/wiki/ANSI_escape_code#Colors

huangapple
  • 本文由 发表于 2023年7月17日 21:36:53
  • 转载请务必保留本文链接:https://go.coder-hub.com/76705026.html
匿名

发表评论

匿名网友

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

确定