重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
这篇文章主要讲解了“C# 中 PadLeft和PadRight 的用法和作用讲解”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“C# 中 PadLeft和PadRight 的用法和作用讲解”吧!
创新互联建站2013年开创至今,是专业互联网技术服务公司,拥有项目成都网站建设、成都网站制作网站策划,项目实施与项目整合能力。我们以让每一个梦想脱颖而出为使命,1280元前郭做网站,已为上家服务,为前郭各地企业和个人服务,联系电话:18980820575
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 的用法和作用讲解这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是创新互联,小编将为大家推送更多相关知识点的文章,欢迎关注!