zoukankan      html  css  js  c++  java
  • 截取字符窜(区分中英文)

       /// <summary>
            /// 截取字符窜
            /// </summary>
            /// <param name="p_SrcString">待截取字符串</param>
            /// <param name="p_Length">截取字符串长度</param>
            /// <returns></returns>
            public static string GetSubString(string p_SrcString, int p_Length)
            {
                string myResult = p_SrcString;
                if (p_Length >= 0)
                {
                    byte[] bsSrcString = System.Text.Encoding.GetEncoding("GB2312").GetBytes(p_SrcString);
                    if (bsSrcString.Length > p_Length)
                    {
                        int nRealLength = p_Length;
                        int[] anResultFlag = new int[p_Length];
                        byte[] bsResult = null;
                        int nFlag = 0;
                        for (int i = 0; i < p_Length; i++)
                        {
                            if (bsSrcString[i] > 127)
                            {
                                nFlag++;
                                if (nFlag == 3)
                                    nFlag = 1;
                            }
                            else
                                nFlag = 0;
                            anResultFlag[i] = nFlag;
                        }
                        if ((bsSrcString[p_Length - 1] > 127) && (anResultFlag[p_Length - 1] == 1))
                            nRealLength = p_Length + 1;
                        bsResult = new byte[nRealLength];
                        Array.Copy(bsSrcString, bsResult, nRealLength);
                        myResult = Encoding.GetEncoding("GB2312").GetString(bsResult) + "...";
                    }
                }
                return myResult;
            }

  • 相关阅读:
    js 类型转换学习
    Prototypes in Javascript 收集.__proto__
    不想说作用域scope,因为是scopeTree,
    在家学习 利器 记录每日点滴
    图片切换特效的分析和学习
    js 无缝滚动效果学习
    MySQL 在高并发下的 订单撮合 系统使用 共享锁 与 排他锁 保证数据一致性
    (二)区块链的共识算法:PoS 及其 例子 代码 实现
    以太坊: ETH 发送交易 sendRawTransaction 方法数据的签名 和 验证过程
    Golang 的 协程调度机制 与 GOMAXPROCS 性能调优
  • 原文地址:https://www.cnblogs.com/houzuofeng/p/3253294.html
Copyright © 2011-2022 走看看