【发布时间】:2014-12-22 14:59:13
【问题描述】:
我需要在 c# 中进行一些手工格式化,只有空格。这是我现在显示的内容:
Conc2_CO ( Y? = 170.2; Y? = 2; delta = -15)
atns_UreaMassFlowDemand ( Y? = 0; Y? = 0; delta = 0)
这就是我想要的:
Conc2_CO ( Y? = 170.2; Y? = 2; delta = -15)
atns_UreaMassFlowDemand ( Y? = 0; Y? = 0; delta = 0)
我尝试使用new string(' ', x) 处理字符串长度,但这很痛苦,而且似乎随机工作,因为所有字符的长度都不相同(即:l 比w 短).. . 有更好的选择吗?
编辑:
生成的字符串是由名称(左)和我在库中添加的信息(右)连接构成的,因此我不能使用 string.format(),因为我只能使用正确的部分。
我需要使用 WinForms 在 ZedGraph Legend 上显示此信息(但我怀疑这会改变什么)。
编辑 2
使用填充,这就是我所拥有的:
这不是我想要的。
【问题讨论】:
-
查看 string.format() dotnetperls.com/string-format
-
@RoyDictus 我忘了说这个字符串的构造很奇怪,我会编辑我的问题
-
这里有一个问题,显示了如何在字符串中填充空格。也许会有所帮助。 stackoverflow.com/questions/644017/…
-
既然您说“字符的长度不同”,我假设您在这里不是一般在谈论控制台或固定长度输出。这意味着您必须考虑用于呈现输出的字体。在 SO 上搜索“MeasureString”或“MeasureText”。
-
好吧,您可以使用
Graphics.MeasureString精确测量您的字符串,因此“所有字符的长度不同”的问题将消失。
标签: c# string formatting