zoukankan      html  css  js  c++  java
  • 一个关于StringBuilder延伸类

    在实际应用当中无论写什么样的软件、项目、或者写一个简单程序很多时候都会用到字符串操作。

    下面简单介绍一下用System.Text.StringBuilder (简称SB)实现字符串累加等操作。

    这个类实现了很基本很简单的方法,但是在生成代码或者模板代码的时候发挥重要作用。

    声明:咋一看是标题党来了,没有什么别的目的,只觉得好玩,刚好标题是简称或者同声词。

    欢迎大家拍砖,或许你有更强大处理相关功能的类,希望也能分享一下,留下链接什么的也可以。

    不多说了,直接上代码。

       /// <summary>
        /// 字符串增加类
        /// </summary>
        public class StringPlus
        {
            /// <summary>
            /// 构造函数
            /// </summary>
            public StringPlus()
            {
                sb = new StringBuilder();
            }
    
            private StringBuilder sb;
    
            /// <summary>
            /// 在结尾追加
            /// </summary>
            /// <param name="text"></param>
            /// <returns></returns>
            public string Append(string text)
            {
               sb.Append(text);
                return sb.ToString();
            }
    
            /// <summary>
            ///  在结尾追加一行
            /// </summary>
            /// <returns></returns>
            public string AppendLine()
            {
                sb.Append("\r\n");
                return sb.ToString();
            }
    
            /// <summary>
            /// 在结尾追加一行内容
            /// </summary>
            /// <param name="text">输入的文本</param>
            /// <returns></returns>
            public string AppendLine(string text)
            {
                sb.Append(text);
                sb.Append("\r\n");
                return sb.ToString();
            }
            /// <summary>
            /// 添加附带缩进空格字符串累加
            /// </summary>
            /// <param name="spaceNum">空格数</param>
            /// <param name="text">空格文本</param>
            /// <returns></returns>
            public string AppendSpace(int spaceNum, string text)
            {
                sb.Append(Space(spaceNum));
                sb.Append(text);
                return sb.ToString();
            }
    
            /// <summary>
            /// 添加添加附带缩进空格和空行的字符串累加
            /// </summary>
            /// <param name="spaceNum">空行数</param>
            /// <param name="text">文本</param>
            /// <returns></returns>
            public string AppendSpaceLine(int spaceNum, string text)
            {
                 sb.Append(Space(spaceNum));
                 sb.Append(text);
                 sb.Append("\r\n");
                return  sb.ToString();
            }
    
            /// <summary>
            /// 删除最后一个字符
            /// </summary>
            /// <param name="strchar">输入字符串</param>
            public void DeleteLastChar(string strchar)
            {
                string str = sb.ToString();
                int length = str.LastIndexOf(strchar);
                if (length > 0)
                {
                     sb = new StringBuilder();
                     sb.Append(str.Substring(0, length));
                }
            }
    
            /// <summary>
            /// 删除最一个逗号
            /// </summary>
            public void DeleteLastComma()
            {
                string str =  sb.ToString();
                int length = str.LastIndexOf(",");
                if (length > 0)
                {
                     sb = new StringBuilder();
                     sb.Append(str.Substring(0, length));
                }
            }
    
            /// <summary>
            /// 移除指定字符串
            /// </summary>
            /// <param name="start">开始索引位置</param>
            /// <param name="num">长度</param>
            public void Remove(int start, int num)
            {
                sb.Remove(start, num);
            }
    
            /// <summary>
            /// 添加附带空格缩进
            /// </summary>
            /// <param name="spaceNum">空格数</param>
            /// <returns></returns>
            public string Space(int spaceNum)
            {
                StringBuilder builder = new StringBuilder();
                for (int i = 0; i < spaceNum; i++)
                {
                    builder.Append("\t");
                }
                return builder.ToString();
            }
    
            /// <summary>
            /// 重写ToString()方法
            /// </summary>
            /// <returns></returns>
            public override string ToString()
            {
                return sb.ToString();
            }
    
            /// <summary>
            /// 获取字符串内容
            /// </summary>
            public string Value
            {
                get
                {
                    return  sb.ToString();
                }
            }
        }
    
  • 相关阅读:
    exchange 2010 数据库管理
    windows Sql server performance monitor
    windows powershell
    开始Dev之路
    配置adb环境
    android当中安装androidstudio时问题
    进阶之旅(一)
    ubuntu 下配置Android环境
    Android开发中的设计模式
    android anr之后如何导出traces.txt
  • 原文地址:https://www.cnblogs.com/cgli/p/1858365.html
Copyright © 2011-2022 走看看