欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

總結(jié)的5個(gè)C#字符串操作方法分享

 更新時(shí)間:2015年05月25日 08:49:06   投稿:junjie  
這篇文章主要介紹了總結(jié)的5個(gè)C#字符串操作方法分享,本文講解了把字符串按照分隔符轉(zhuǎn)換成 List、把字符串轉(zhuǎn) 按照, 分割 換為數(shù)據(jù)、得到數(shù)組列表以逗號(hào)分隔的字符串、得到字符串長(zhǎng)度等方法,需要的朋友可以參考下

字符串操作是C#中最基本的、最常見的、也是用的最多的,以下我總結(jié)了幾種常見的方法:

1.把字符串按照分隔符轉(zhuǎn)換成 List 

/// <summary> 
    /// 把字符串按照分隔符轉(zhuǎn)換成 List 
    /// </summary> 
    /// <param name="str">源字符串</param> 
    /// <param name="speater">分隔符</param> 
    /// <param name="toLower">是否轉(zhuǎn)換為小寫</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.把字符串轉(zhuǎn) 按照, 分割 換為數(shù)據(jù) 

/// <summary> 
    /// 把字符串轉(zhuǎn) 按照, 分割 換為數(shù)據(jù) 
    /// </summary> 
    /// <param name="str"></param> 
    /// <returns></returns> 
    public static string[] GetStrArray(string str)
    {
      return str.Split(new[] { ',', ',' });
    }

3.得到數(shù)組列表以逗號(hào)分隔的字符串

/// <summary>
    /// 得到數(shù)組列表以逗號(hào)分隔的字符串
    /// </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.得到字符串長(zhǎng)度

/// <summary>
    /// 得到字符串長(zhǎng)度
    /// </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.截取指定長(zhǎng)度字符串

/// <summary>
    /// 截取指定長(zhǎng)度字符串
    /// </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; 
    }


暫時(shí)就這五種方法了。


相關(guān)文章

  • 使用 BenchmarkDotNet 對(duì) C# 代碼進(jìn)行基準(zhǔn)測(cè)試

    使用 BenchmarkDotNet 對(duì) C# 代碼進(jìn)行基準(zhǔn)測(cè)試

    這篇文章主要介紹了使用 BenchmarkDotNet 對(duì) C# 代碼進(jìn)行基準(zhǔn)測(cè)試,幫助大家更好的理解和學(xué)習(xí)使用c#,感興趣的朋友可以了解下
    2021-03-03
  • Unity AssetBundle打包工具示例詳解

    Unity AssetBundle打包工具示例詳解

    這篇文章主要介紹了Unity AssetBundle打包工具,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-10-10
  • C#識(shí)別出圖片里的數(shù)字和字母

    C#識(shí)別出圖片里的數(shù)字和字母

    本文給大家分享的是C#識(shí)別出圖片里的數(shù)字和字母的代碼,主要是識(shí)別以前公司的軟件注冊(cè)碼截圖里的數(shù)字和字母,功能很簡(jiǎn)單,也存在很大的局限性,這里僅僅是分享,小伙伴們參考下。
    2015-03-03
  • WCF入門教程之Windows通訊接口

    WCF入門教程之Windows通訊接口

    這篇文章介紹了WCF入門教程之Windows通訊接口,文中通過示例代碼介紹的非常詳細(xì)。對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-05-05
  • C#11新特性預(yù)覽及使用介紹

    C#11新特性預(yù)覽及使用介紹

    這篇文章主要為大家介紹了C#11新特性預(yù)覽及使用介紹,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-05-05
  • C# 得到某一天的起始和截止時(shí)間的代碼

    C# 得到某一天的起始和截止時(shí)間的代碼

    自己的制作的單詞學(xué)習(xí)程序中需要得到某一天的起始和截止時(shí)間,找了一下,使用一個(gè)字符串來轉(zhuǎn)換比較方便
    2011-11-11
  • 基于Unity Line Renderer組件的常用屬性說明

    基于Unity Line Renderer組件的常用屬性說明

    這篇文章主要介紹了基于Unity Line Renderer組件的常用屬性說明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2021-04-04
  • C# networkcomms 3.0實(shí)現(xiàn)模擬登陸總結(jié)

    C# networkcomms 3.0實(shí)現(xiàn)模擬登陸總結(jié)

    這篇文章主要介紹了C# networkcomms 3.0實(shí)現(xiàn)模擬登陸總結(jié),需要的朋友可以參考下
    2017-06-06
  • c# 死鎖和活鎖的發(fā)生及避免

    c# 死鎖和活鎖的發(fā)生及避免

    多線程編程時(shí),如果涉及同時(shí)讀寫共享數(shù)據(jù),就要格外小心。如果共享數(shù)據(jù)是獨(dú)占資源,則要對(duì)共享數(shù)據(jù)的讀寫進(jìn)行排它訪問,最簡(jiǎn)單的方式就是加鎖。鎖也不能隨便用,否則可能會(huì)造成死鎖和活鎖。本文將通過示例詳細(xì)講解死鎖和活鎖是如何發(fā)生的以及如何避免它們。
    2020-11-11
  • Unity Shader實(shí)現(xiàn)圖形繪制(藍(lán)天白云大海)

    Unity Shader實(shí)現(xiàn)圖形繪制(藍(lán)天白云大海)

    這篇文章主要為大家詳細(xì)介紹了Unity Shader實(shí)現(xiàn)圖形繪制,藍(lán)天白云大海,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2020-04-04

最新評(píng)論