C#控制台打印输出对齐_winfrom 打印格式对齐_lzmdhn的博客-程序员宅基地

技术标签: C#学习  c#  控制台  对齐打印  

 /// 根据asc码来判断字符串的长度,在0~127间字符长度加1,否则加2

        ///
        /// 需要返回长度的字符串
        ///
        public int TrueLength(string str)
        {
            int lenTotal = 0;
            int n = str.Length;
            string strWord = "";  //清空字符串
            int asc;
            for (int i = 0; i < n; i++)
            {
                strWord = str.Substring(i, 1);
                asc = Convert.ToChar(strWord);
                if (asc < 0 || asc > 127)      // 在0~127间字符长度加1,否则加2
                {
                    lenTotal = lenTotal + 2;  
                }
                else
                {
                    lenTotal = lenTotal + 1;
                }
            }
            return lenTotal;
        }
        ///
        /// 统一字符串的长度
        ///
        /// 初始字符串
        /// 规定统一字符串的长度
        /// 追加的字符为' '
        /// 返回统一后的字符串
        public string PadRightTrueLen(string strOriginal,ref int maxTrueLength, char chrPad)
        {
            string strNew = strOriginal;
            if (strOriginal == null || maxTrueLength <= 0)
            {
                strNew = "";
                return strNew;
            }
            int trueLen = TrueLength(strOriginal);
            if (trueLen > maxTrueLength)                    // 如果字符串大于规定长度 将规定长度等于字符串长度
            {
                for (int i = 0; i < trueLen - maxTrueLength; i++)  
                {
                    maxTrueLength += chrPad.ToString().Length;
                }
                   
               
            }
            else// 填充  小于规定长度 用‘ ’追加,直至等于规定长度
            {
                for (int i = 0; i < maxTrueLength - trueLen; i++)
                {
                    strNew += chrPad.ToString();
                }
            }
            return strNew;
        }

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/lzmdhn/article/details/78784824

智能推荐

javastudy-33:优美字符串_优美字符串java-程序员宅基地

33:优美字符串描述对于给定的两个字符串,我们将要做的是将它们拼接起来,拼接成一个“优美”的字符串,那么什么样的字符串是优美的呢?举一个例子,我们要求拼接时,第一个字符串ABCE在前,第二个字符串CEDF在后,拼接的结果是ABCECEDF,接着,我们要对这个ABCECEDF进行修饰,要求将它们在连接处相同的子串重叠在一起,重叠之后的结果为ABCEDF,这就是拼接形成的优美的字符串,现在请你完成这个任务。输入输入包含两个用空格隔开的字符串s1和s2输出输出一个字符串,表示拼接之后的“优美字符串”_优美字符串java

询问HTG:频繁重新启动,移动Microsoft Office,将网络共享到WiMax笔记本电脑-程序员宅基地

Once a week we dip into our reader mailbag to answer your tech questions. This week we take a look at how you can avoid frequent reboots, moving MS Office, and how to share your laptop’s internet conn..._移动了 office位置导致电脑一直重启

Linux Tomcat8.5.47 JVM自调优(附调优代码)-程序员宅基地

测试环境Jdk1.8、CentOS Linux release 7.6.1810、Tomcat8.5.45查看Tomcat版本号(首先你得进入tomcat/bin目录下)[root@localhost bin]# ./version.sh Using CATALINA_BASE: /odboy/tomcatUsing CATALINA_HOME: /odboy..._linux下将tomcat8.5内存调大

python代码如何加密_Python代码加密,python-程序员宅基地

1、转为.pyc文件# 将py文件转为pyc文件,并且显示到当前目录python3 -m compileall -b .# 删除目录下所有的py文件find . -name "*.py" |xargs rm -rf# 删除目录下所有的__pycache__文件find . -name "__pycache__" |xargs rm -rf使用python代码如下:不过可能报错 magic 。。。..._.py 加密

egret翻转图片出现模糊问题的一种解决方案_egret 图片模糊-程序员宅基地

最近在进行Egret H5的开发,发现在设置图片rotation属性后,最终的游戏里该图片出现了模糊的症状。经过排查,发现问题是出在图集上。一旦图片经过了翻转,在图集里的图片可能会出现模糊。所以当我们对图片进行翻转操作的时候,最好把这张图片作为散图而不是图集来处理。这样子,图片模糊的问题就解决了。这里可以简单地总结下:一旦图片出现了奇奇怪怪的模糊问题,我们可以先从图集的角度去考虑。这里只是我..._egret 图片模糊

raised exception "Index out of Bounds"-程序员宅基地

r=iPlot1->Channel[0]->DataY[x+1];改为r=iPlot1->Channel[0]->DataY[++x];

随便推点

list集合与queue集合-程序员宅基地

1、List集合的特点元素是有序的,元素可以重复,因为该集合体系有索引List体系下ListIterator()具有向前迭代的功能。在迭代时不能通过集合对象的方法操作集合中的元素,因为会发生异常。2、实现类ArrayList和Vector作为List类的两个典型实现,完全支持之前介绍的List接口的全部功能。ArrayList和Vector类都是基于数组实现的List类,所

Android display架构分析(一)_mddi转换-程序员宅基地

http://hi.baidu.com/leowenj/blog/item/429c2dd6ac1480c851da4b95.html高通7系列硬件架构分析如上图,高通7系列 Display的硬件部分主要由下面几个部分组成:A、MDP高通MSM7200A内部模块,主要负责显示数据的转换和部分图像处理功能理,如YUV转RGB,放大缩小、旋转等。MDP内部的MD_mddi转换

今天写出一个十分弱智的 bug!-程序员宅基地

点击上方“Java基基”,选择“设为星标”做积极的人,而不是积极废人!源码精品专栏原创 | Java 2020超神之路,很肝~中文详细注释的开源项目RPC 框架 Dubbo 源码解析...

基于PWM的呼吸灯-程序员宅基地

1、初始化(1)端口配置static nrf_drv_pwm_t m_pwm2 = NRF_DRV_PWM_INSTANCE(2);// This is for tracking PWM instances being used, so we can unintialize only// the relevant ones when switching from one demo

android中对View的onMeasure()方法的理解-程序员宅基地

在android开发中,很多人对自定义View是望而生畏,我也一样,但这又是向高级进阶的必经之路,主要是对View里面的很多方法不知道怎么理解,其中一个就是onMeasure()方法,网上有很多这样解释说明,可能是由于我的领悟力有限,一直没能搞明白,今天有点空,好好研究一下,并记录下来,也希望对大家有所帮助。 首先,我自定义一个MyView,继承于View,onMeasure()方法不做处理,直接_onmeasure

Python 实现简单的端口扫描器-程序员宅基地

这个任务从去年末师傅布置下来一直拖到现在,(惭愧到不行现在边写边在这里记录遇到的问题~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~实现对特定 (ip,port_number) 的扫描 从最简单入手,昨天在i春秋上看了python网络编程的课,并且自己实现了一次简单c/s架构的客户端服务器响应,对socket有了初步的认识(去年看到s...