gpt4 book ai didi

c# - 通过添加空格来格式化文本

转载 作者:行者123 更新时间:2023-11-30 20:50:36 27 4
gpt4 key购买 nike

我正在尝试按空格格式化字符串。所有字符串通常看起来像

01. Anton 30p
02. Cinderella 20p
03. Thomas 18p
04. Anastacia-Laura 16p

我想格式化每个字符串,使点从同一列开始。我在那里写道:

s = stringUpToName;
int addSpacing = 37 - s.Length;
for (int i = 0; i < addSpacing; i += 1) s += " ";

s += points;

这样更接近了,但它的格式仍然不完美。

我希望它看起来像这样:

01. Anton            30p
02. Cinderella 20p
03. Thomas 18p
04. Anastacia-Laura 16p

最佳答案

使用"0" custom specifier作为零占位符来格式化索引/记录数。 0:00 将为您提供 011

另请记住 item format syntax{ index[,alignment][:formatString]} 其中对齐指示首选格式化字段宽度。因此,将对齐方式添加到第二项格式 {1,20} 后,您的右对齐字段宽度为 20 个字符。负对齐字段将左对齐。

总格式字符串将类似于 "{0:00}.{1,-20}{2}p"

如果您正在构建字符串,则可以将其与 String.FormatStringBuilder.AppendFormat 一起使用,如果您正在编写,则可以将其与 Console.WriteLine 一起使用它去安慰。

int index = 1;
string name = "Anton";
int points = 30;
var result = String.Format("{0:00}. {1,-20}{2}p", index, name, points)
// "01. Anton 30p"

关于c# - 通过添加空格来格式化文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22424238/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com