zoukankan      html  css  js  c++  java
  • <经验杂谈>C#/.Net字符串操作方法小结

    字符串操作是C#中最基本的、最常见的、也是用的最多的,以下我总结 了几种常见的方法

    1.把字符串按照分隔符转换成 List  

            /// <summary>  
            /// 把字符串按照分隔符转换成 List  
            /// </summary>  
            /// <param name="str">源字符串</param>  
            /// <param name="speater">分隔符</param>  
            /// <param name="toLower">是否转换为小写</param>  
            /// <returns></returns>  
            public static List<string> GetStrArray(string str, char speater, bool toLower)
            {
                var list = new List<string>();
                var ss = str.Split(speater);
                foreach (var s in ss)
                {
                    if (string.IsNullOrWhiteSpace(s) || s == speater.ToString(CultureInfo.InvariantCulture)) continue;
                    var strVal = s;
                    if (toLower)
                    {
                        strVal = s.ToLower();
                    }
                    list.Add(strVal);
                }
                return list;
            }

    2.把字符串转 按照, 分割 换为数据  

            /// <summary>  
            /// 把字符串转 按照, 分割 换为数据  
            /// </summary>  
            /// <param name="str"></param>  
            /// <returns></returns>  
            public static string[] GetStrArray(string str)
            {
                return str.Split(new[] { ',', '' });
            }

    3.得到数组列表以逗号分隔的字符串

            /// <summary>
            /// 得到数组列表以逗号分隔的字符串
            /// </summary>
            /// <param name="list"></param>
            /// <param name="speater"></param>
            /// <returns></returns>
            public static string GetArrayStr(List<string> list, string speater)
            {
                var sb = new StringBuilder();
                for (var i = 0; i < list.Count; i++)
                {
                    if (i == list.Count - 1)
                    {
                        sb.Append(list[i]);
                    }
                    else
                    {
                        sb.Append(list[i]);
                        sb.Append(speater);
                    }
                }
                return sb.ToString();
            }

    4.得到字符串长度

            /// <summary>
            /// 得到字符串长度
            /// </summary>
            /// <param name="inputStr"></param>
            /// <returns></returns>
            public static int StrLength(string inputStr)
            {
                var asc = new ASCIIEncoding();
                var s = asc.GetBytes(inputStr);
                return s.Sum(t => t == 63 ? 2 : 1);
            }

    5.截取指定长度字符串

            /// <summary>
            /// 截取指定长度字符串
            /// </summary>
            /// <param name="inputString"></param>
            /// <param name="len"></param>
            /// <returns></returns>
            public static string CutStr(string inputString, int len)
            {
                var isShowFix = false;
                if (len % 2 == 1)
                {
                    isShowFix = true;
                    len--;
                }
                var ascii = new ASCIIEncoding();
                var tempLen = 0;
                var tempString = "";
                var s = ascii.GetBytes(inputString);
                for (var i = 0; i < s.Length; i++)
                {
                    tempLen += s[i] == 63 ? 2 : 1;
                    try
                    {
                        tempString += inputString.Substring(i, 1);
                    }
                    catch
                    {
                        break;
                    }
    
                    if (tempLen > len)
                        break;
                }
    
                var mybyte = Encoding.Default.GetBytes(inputString);
                if (isShowFix && mybyte.Length > len)
                    tempString += "";
                return tempString; 
            }

    暂时就这五种方法了。

  • 相关阅读:
    请朋友做事,须以名誉为限,为朋友做事,亦须以名誉为限
    这世上总有一些人记得你,关注着你,牵挂着你
    杏花春雨已不再,牧童遥指已不再,剑门细雨渭城轻尘也都已不再
    如果要你做鲁滨逊,你会选第三型还是第二型的朋友做“礼拜五”呢
    人类最不能伤害的就是自尊
    单靠理论和教训是无济于事的
    交真朋友已是件比较奢侈的事儿
    他一定是一个懂生活、懂人生,爱自己、爱别人的人
    国子监,就是从前的大学
    只有把理想和现实有机结合起来,才有可能成为一个成功之人
  • 原文地址:https://www.cnblogs.com/benpao/p/4526801.html
Copyright © 2011-2022 走看看