场景:我正在创建一个需要采用此格式https://www.rbcroyalbank.com/ach/file-451771.pdf的文件。我需要能够为某些字段设置字符串长度的限制。
问题:有没有一种简单的方法可以设置字段的限制,这样如果字符串大于限制那么只需要获取子字符串,如果更小则会添加额外的空格?
注意:通过使用.toString(“00000”),我能够用整数完成类似的操作。
答案 0 :(得分:7)
您可以将PadRight与Substring方法结合使用(5
当然可以根据您的需要进行变更):
Console.WriteLine("'{0}'", "abcdefgh".PadRight(5).Substring(0, 5));
Console.WriteLine("'{0}'", "abc".PadRight(5).Substring(0, 5));
打印:
'abcde'
'abc '
答案 1 :(得分:3)
您可以使用string.PadLeft
或string.PadRight
填充字符串,并使用string.Substring
来限制字符串。
答案 2 :(得分:3)
这很简单。
const int MaxStringLength = 100; /* set to your maximum length */
...
myString = (myString.Length >= MaxStringLength)
? myString.Substring(0, MaxStringLength)
: myString.PadRight(MaxStringLength);