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

C#實(shí)現(xiàn)根據(jù)字節(jié)數(shù)截取字符串并加上省略號的方法

 更新時(shí)間:2014年07月30日 11:22:44   投稿:shichen2014  
這篇文章主要介紹了C#實(shí)現(xiàn)根據(jù)字節(jié)數(shù)截取字符串并加上省略號的方法,比較實(shí)用的功能,需要的朋友可以參考下

本文實(shí)例講述了C#按字節(jié)數(shù)截取字符串并在后面加上省略號...的方法,這是一個(gè)自定義的C#函數(shù),函數(shù)的使用說明如下:

<param name="origStr">原始字符串</param>
<param name="endIndex">提取前endIdex個(gè)字節(jié)</param>
<returns></returns>

函數(shù)代碼如下:

public static string GetSubString(string origStr, int endIndex)
{
  if (origStr == null || origStr.Length == 0 || endIndex < 0)
    return "";
  int bytesCount = System.Text.Encoding.GetEncoding("gb2312").GetByteCount(origStr);
  if (bytesCount > endIndex)
  {
    int readyLength = 0;
    int byteLength;
    for (int i = 0; i < origStr.Length; i++)
    {
      byteLength = System.Text.Encoding.GetEncoding("gb2312").GetByteCount(new char[] { origStr[i] });
      readyLength += byteLength;
      if (readyLength == endIndex)
      {
        origStr = origStr.Substring(0, i + 1) + "...";
        break;
      }
      else if (readyLength > endIndex)
      {
        origStr = origStr.Substring(0, i) + "...";
        break;
      }
    }
  }
  return origStr;
}

以下所示示例也是根據(jù)字節(jié)數(shù)截取字符串的,只是這個(gè)函數(shù)后面不加省略號……

/// 按字節(jié)數(shù)截取字符串(不帶省略號)
/// </summary>
/// <param name="origStr">原始字符串</param>
/// <param name="endIndex">提取前endIdex個(gè)字節(jié)</param>
/// <returns></returns>
public static string GetSub1String(string origStr, int endIndex)
{
  if (origStr == null || origStr.Length == 0 || endIndex < 0)
    return "";
  int bytesCount = System.Text.Encoding.GetEncoding("gb2312").GetByteCount(origStr);
  if (bytesCount > endIndex)
  {
    int readyLength = 0;
    int byteLength;
    for (int i = 0; i < origStr.Length; i++)
    {
      byteLength = System.Text.Encoding.GetEncoding("gb2312").GetByteCount(new char[] { origStr[i] });
      readyLength += byteLength;
      if (readyLength == endIndex)
      {
        origStr = origStr.Substring(0, i + 1);
        break;
      }
      else if (readyLength > endIndex)
      {
        origStr = origStr.Substring(0, i);
        break;
      }
    }
  }
  return origStr;
}

相關(guān)文章

  • C# 開發(fā)日志本地化工具

    C# 開發(fā)日志本地化工具

    這篇文章主要介紹了C# 開發(fā)日志本地化工具的步驟,幫助大家更好的理解和學(xué)習(xí)使用c#,感興趣的朋友可以了解下
    2021-02-02
  • 淺析C#更改令牌ChangeToken

    淺析C#更改令牌ChangeToken

    這篇文章主要介紹了C#更改令牌ChangeToken,文中運(yùn)用大量代碼講解的非常詳細(xì),感興趣的小伙伴一起來看看這篇文章吧
    2021-09-09
  • WPF實(shí)現(xiàn)圖片合成或加水印的方法【2種方法】

    WPF實(shí)現(xiàn)圖片合成或加水印的方法【2種方法】

    這篇文章主要介紹了WPF實(shí)現(xiàn)圖片合成或加水印的方法,結(jié)合實(shí)例形式分析了2種比較實(shí)用的WPF圖片操作相關(guān)技巧,需要的朋友可以參考下
    2017-03-03
  • C#實(shí)現(xiàn)簡化QQ聊天窗口

    C#實(shí)現(xiàn)簡化QQ聊天窗口

    這篇文章主要為大家詳細(xì)介紹了C#實(shí)現(xiàn)簡化QQ聊天窗口,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-02-02
  • C#多線程系列之線程完成數(shù)

    C#多線程系列之線程完成數(shù)

    本文詳細(xì)講解了C#多線程中的線程完成數(shù),文中通過示例代碼介紹的非常詳細(xì)。對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-02-02
  • C#華氏溫度和攝氏溫度相互轉(zhuǎn)換的方法

    C#華氏溫度和攝氏溫度相互轉(zhuǎn)換的方法

    這篇文章主要介紹了C#華氏溫度和攝氏溫度相互轉(zhuǎn)換的方法,涉及C#數(shù)學(xué)運(yùn)算的相關(guān)技巧,非常簡單實(shí)用,需要的朋友可以參考下
    2015-07-07
  • C#實(shí)現(xiàn)的SN快速輸入工具實(shí)例

    C#實(shí)現(xiàn)的SN快速輸入工具實(shí)例

    這篇文章主要介紹了C#實(shí)現(xiàn)的SN快速輸入工具,以實(shí)例的形式詳細(xì)講述了C#實(shí)現(xiàn)序列號快速輸入的方法,是非常實(shí)用的技巧,需要的朋友可以參考下
    2014-11-11
  • C#表達(dá)式樹的基本用法講解

    C#表達(dá)式樹的基本用法講解

    這篇文章主要介紹了C#表達(dá)式樹的基本用法講解,幫助大家更好的理解和使用c#,感興趣的朋友可以了解下
    2020-12-12
  • C#實(shí)現(xiàn)NPOI的Excel導(dǎo)出詳解

    C#實(shí)現(xiàn)NPOI的Excel導(dǎo)出詳解

    這篇文章主要介紹了C#實(shí)現(xiàn)NPOI的Excel導(dǎo)出的示例代碼,文中的實(shí)現(xiàn)過程講解詳細(xì),對我們的學(xué)習(xí)或工作有一定的幫助,感興趣的可以跟隨小編一起學(xué)習(xí)一下
    2022-01-01
  • C#中實(shí)現(xiàn)契約測試的方法

    C#中實(shí)現(xiàn)契約測試的方法

    這篇文章主要介紹了C#中實(shí)現(xiàn)契約測試,在本文中,我將揭開契約測試的神秘面紗,并向您展示如何在 C# 項(xiàng)目中實(shí)現(xiàn)它,需要的朋友可以參考下
    2023-09-09

最新評論