如何在 C# 中执行字符串显示限制
本文关键字:字符串 显示 执行 | 更新日期: 2023-09-27 18:36:33
今天我学到了两件事
1 - 在文本框中显示 int 为此格式:0001
Number.ToString("0000.");
2 - 在此格式中显示双精度:在文本框中 £ 03.00
Price.ToString("£ 00.00");
我的问题是:如何在 c# 中显示字符串的限制?
我的意思是字符串中的值是
string myString = "Hello World!"
我希望它显示 20 个字母,以便它显示
"Hello World! "
如果超过 20 个字母,它将跳过显示其余字母例如:
string myString = "I Love every thing you say :*"
它只会显示以下内容:
"I Love every thing y"
最多显示 20 个字母(计算空格)。
知道吗?
你需要使用子字符串或 PadRight
int length = 20;
string original = "I Love every thing you say :*";
string finalString = original.Length > length ?
original.Substring(0, length) :
original.PadRight(length);
这将根据需要采用适当长度的子字符串或带空格的填充。
string myString = "I Love every thing you say :*"
string fixedWidth = string.Format("{0, -20}", (myString.Length > 20 ? myString.Substring(0,20) : myString));
作为字符串扩展:
public static string ToFixedWidth(this string s, int length)
{
return string.Format("{0, -20}, s.Length > length ? s.Substring(0, length) : s);
}
我相信
String.Format("{0,-20}", "Hello World!");
会给你你需要的。
编辑:应该是逗号
编辑:没关系,这不会修剪。也许与子字符串结合使用:
String.Format("{0,-20}", "Hello World!").Substring(0,20);
您还可以添加一个包含 21 个空格的字符串,然后删除以获得正确的长度:
string formattedStr = (myString + new string(' ', 21)).Remove(20);