扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
这篇文章主要讲解了“C# 中 PadLeft和PadRight 的用法和作用讲解”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“C# 中 PadLeft和PadRight 的用法和作用讲解”吧!
成都网络公司-成都网站建设公司创新互联10余年经验成就非凡,专业从事成都网站设计、成都做网站、外贸网站建设,成都网页设计,成都网页制作,软文推广,广告投放等。10余年来已成功提供全面的成都网站建设方案,打造行业特色的成都网站建设案例,建站热线:13518219792,我们期待您的来电!C# 中 PadLeft ,PadRight的用法
简单来说就是给字符串实现补位。
如:String.PadLeft(5,'0'); 表示检查字符串长度是否少于5位,若少于5位,则自动在其左侧以'0'补足。
同理PadRight是在右侧实现补位。
补位
string str = "10";
str.PadLeft(5,'0')
输出:00010
str.PadRight(5, '0')
输出:10000
因为在NET中,string的Length并不区分当前字符串包含的字符为单字节还是双字节字符,这样导致我们在通过字符串的PadLeft和PadRight方法处理一些需要排版显示的字符串时,会使得相关显示参差不齐,所以这里就有了这么一个扩展,让双字节显示占用的两个单字节宽度“吐”出来,下面是具体代码
using System.Text.RegularExpressions; public static class StringExtensions { ////// 按单字节字符串向左填充长度 /// /// /// /// ///public static string PadLeftWhileDouble(this string input, int length, char paddingChar = '\0') { var singleLength = GetSingleLength(input); return input.PadLeft(length - singleLength + input.Length, paddingChar); } private static int GetSingleLength(string input) { if (string.IsNullOrEmpty(input)) { throw new ArgumentNullException(); } return Regex.Replace(input, @"[^\x00-\xff]", "aa").Length;//计算得到该字符串对应单字节字符串的长度 } /// /// 按单字节字符串向右填充长度 /// /// /// /// ///public static string PadRightWhileDouble(this string input, int length, char paddingChar = '\0') { var singleLength = GetSingleLength(input); return input.PadRight(length - singleLength + input.Length, paddingChar); } }
测试代码如下
Console.WriteLine("123测试测试".PadRightWhileDouble(25) + "1"); Console.WriteLine("123测试测试".PadRightWhileDouble(25, 'A') + "1"); Console.WriteLine("1231212".PadRightWhileDouble(25) + "1"); Console.WriteLine("1231212".PadRightWhileDouble(25, 'A') + "1"); Console.WriteLine("123测试测试".PadLeftWhileDouble(25) + "1"); Console.WriteLine("123测试测试".PadLeftWhileDouble(25, 'A') + "1"); Console.WriteLine("1231212".PadLeftWhileDouble(25) + "1"); Console.WriteLine("1231212".PadLeftWhileDouble(25, 'A') + "1");
测试效果图
下面是正常的用法
在 C# 中可以对字符串使用 PadLeft 和 PadRight 进行轻松地补位。
PadLeft(int totalWidth, char paddingChar) //在字符串左边用 paddingChar 补足 totalWidth 长度
PadRight(int totalWidth, char paddingChar) //在字符串右边用 paddingChar 补足 totalWidth 长度
示例:
1.假如想输出AAAAA,可以用string.Empty.PadLeft(5,'A');
2.假如想输出:
*
**
***
****
可以用PadLeft实现:
for(int i=1;i<=4;i++) { Console.WriteLine(string.Empty.PadLeft(i,'*')); }
感谢各位的阅读,以上就是“C# 中 PadLeft和PadRight 的用法和作用讲解”的内容了,经过本文的学习后,相信大家对C# 中 PadLeft和PadRight 的用法和作用讲解这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是创新互联成都网站设计公司,小编将为大家推送更多相关知识点的文章,欢迎关注!
另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流