如何在C#中按一定位数打印字符串?

如何在C#中按一定位数打印字符串?,c#,wpf,C#,Wpf,我正在使用VS2010-WPF-C# 我不知道如何指定在屏幕上打印字符串时为字符串保留的位数 回到帕斯卡,我们过去常常做Writeline(“这里有一些字符串”):20——字符串将只打印在20位上 在C#中我将如何做到这一点?这可能是一个近似的等价物 string.Format("{0,20}","some string here") 编辑: 对于截断,您可以这样做 int length = 20; string.Format("{0,"+length+"}", "some string he

我正在使用VS2010-WPF-C#

我不知道如何指定在屏幕上打印字符串时为字符串保留的位数

回到帕斯卡,我们过去常常做
Writeline(“这里有一些字符串”):20
——字符串将只打印在20位上


在C#中我将如何做到这一点?

这可能是一个近似的等价物

string.Format("{0,20}","some string here")
编辑:

对于截断,您可以这样做

int length = 20;
string.Format("{0,"+length+"}", "some string here".Substring(0,length));
或者,如果您不喜欢字符串串联
“{0,“+length+”}”
,您可以尝试

string.Format(string.Format("{{0,{0}}}", length), "some string here".Substring(0, length));

这可能是一个近似的等价物

string.Format("{0,20}","some string here")
编辑:

对于截断,您可以这样做

int length = 20;
string.Format("{0,"+length+"}", "some string here".Substring(0,length));
或者,如果您不喜欢字符串串联
“{0,“+length+”}”
,您可以尝试

string.Format(string.Format("{{0,{0}}}", length), "some string here".Substring(0, length));

不特定于写入屏幕,但您可以获取任意字符串的子字符串,并将其用于输出:

string myString = "Something very long to be put here";

// Output just the first 10.
Console.WriteLine(myString.Substring(0,10));

不特定于写入屏幕,但您可以获取任意字符串的子字符串,并将其用于输出:

string myString = "Something very long to be put here";

// Output just the first 10.
Console.WriteLine(myString.Substring(0,10));

所以在WPF中:

所以在WPF中:

它可能就是我,但我不清楚“在确定的位数上”它可能就是我,但“在确定的位数上”对我来说不清楚Pascal可以截断字符串以适应。但距离足够近。Pascal可以截断字符串以适应。但距离足够近。您也可以使用LINQ并执行myString.Take(10)或myString.Take(10.ToString();-)您还可以使用LINQ并执行myString.Take(10)或myString.Take(10.ToString();-)