C#中一些字符串操作的常用用法

2016-02-19 11:57 2 1 收藏

下面这个C#中一些字符串操作的常用用法教程由图老师小编精心推荐选出,过程简单易学超容易上手,喜欢就要赶紧get起来哦!

【 tulaoshi.com - 编程语言 】

C#中一些字符串操作的常用用法


//获得汉字的区位码
  byte[]array=newbyte[2];
  array=System.Text.Encoding.Default.GetBytes("啊");


inti1=(short)(array[0]-'''');
  inti2=(short)(array[1]-'''');


//unicode解码方式下的汉字码
  array=System.Text.Encoding.Unicode.GetBytes("啊");
  i1=(short)(array[0]-'''');
  i2=(short)(array[1]-'''');


//unicode反解码为汉字
  stringstr="4a55";
  strings1=str.Substring(0,2);
  strings2=str.Substring(2,2);


intt1=Convert.ToInt32(s1,16);
  intt2=Convert.ToInt32(s2,16);


array[0]=(byte)t1;
  array[1]=(byte)t2;


strings=System.Text.Encoding.Unicode.GetString(array);


//default方式反解码为汉字
  array[0]=(byte)196;
  array[1]=(byte)207;
  s=System.Text.Encoding.Default.GetString(array);


//取字符串长度
  s="iam方枪枪";
  intlen=s.Length;//willoutputas6
  byte[]sarr=System.Text.Encoding.Default.GetBytes(s);
  len=sarr.Length;//willoutputas3+3*2=9


//字符串相加
  System.Text.StringBuildersb=newSystem.Text.StringBuilder("");
  sb.Append("i");
  sb.Append("am");
  sb.Append("方枪枪");


//获取ASC码

int ASC(String Data) 
    {
        byte[] b = System.Text.Encoding.Default.GetBytes(Data); 
        int p=0; 
        if(b.Length==1) //如果为英文字符直接返回
        return (int)b[0];
        for( int i = 0; i  b.Length; i++)
        { 
            p = (int)b[ i ]; 
            p = p * 256 + b[ i+1] - 65536;
        }
        return p;
    }


/// summary求字符串长度
        /// 求字符串长度
        /// /summary
        /// param name="inputString"/param
        /// returns/returns
        int len(String inputString)
        {    string s=inputString;
          int len=s.Length;//willoutputa s6
          byte[]sarr=System.Text.Encoding.Default.GetBytes(s);
          len=sarr.Length;//willoutputa s3+3*2=9
            return len;
        }


//检测含有中文字符串的实际长度
str为要检测的字符串:
ASCIIEncoding n = new ASCIIEncoding();
byte[] b = n.GetBytes(str);
int l = 0; // l 为字符串之实际长度
for (int i=0;i = b.Length-1;i++)
{
if (b[i] ==63) //判断是否为汉字或全脚符号
{
l++;
}
l++;
}


//载字符串修正版(yaosansi)
        /// summary
        /// 截字符串
        /// /summary
        /// param name="inputString"所要截取的字符串/param
        /// param name="len"要载得字符串的长度/param
        /// returns/returns
        public static string CutString(string inputString,int len)
        {


            ASCIIEncoding ascii =  new ASCIIEncoding();
            int tempLen=0;
            string tempString="";
            byte[] s = ascii.GetBytes(inputString);
            for(int i=0;is.Length-1;i++)
            {
                if((int)s[i]==63)
                {
                    tempLen+=2;
                }
                else
                {
                    tempLen+=1;
                }

                try
                {
                    tempString+=inputString.Substring(i,1);
                }
                catch
                {
                    break;
                }

                if(tempLenlen)
                    break;
            }
            //如果截过则加上半个省略号
            byte[] mybyte=System.Text.Encoding.Default.GetBytes(inputString);
            if(mybyte.Lengthlen)
                tempString+="";


            return tempString;
        }


//截取字符串(原稿)
public static string CutString(string inputString,int len)
{


ASCIIEncoding ascii =  new ASCIIEncoding();
int tempLen=0;
string tempString="";
byte[] s = ascii.GetBytes(inputString);
for(int i=0;is.Length;i++)
{
if((int)s[i]==63)
{
tempLen+=2;
}
else
{
tempLen+=1;
}

try
{
tempString+=inputString.Substring(i,1);
}
catch
{
break;
}

if(tempLenlen)
break;
}
//如果截过则加上半个省略号
byte[] mybyte=System.Text.Encoding.Default.GetBytes(inputString);
if(mybyte.Lengthlen)
tempString+="…";


return tempString;
}


//在C#中截取指定长度的中文字符串 
privatestaticstringSubString(stringstringToSub,intlength){
Regexregex=newRegex("[u4e00-u9fa5]+",RegexOptions.Compiled);
char[]stringChar=stringToSub.ToCharArray();
StringBuildersb=newStringBuilder();
intnLength=0;

for(inti=0;istringChar.Length;i++){
if(regex.IsMatch((stringChar[i]).ToString())){
sb.Append(stringChar[i]);
nLength+=2;
}
else{
sb.Append(stringChar[i]);
nLength=nLength+1;
}

if(nLengthlength)
break;
}

returnsb.ToString();

/////////////////////////////////////////////////////////////////////


string--bytearray

byte[]data=Syste.Text.Encoding.ASCII.GetBytes(string);

string--byte

bytedata=Convert.ToByte(string);

byte[]--string

stringstring=Encoding.ASCII.GetString(bytes,0,nBytesSize);

来源:http://www.tulaoshi.com/n/20160219/1599264.html

延伸阅读
Objective-C简单封装 字符串的存储操作,省去中间沙盒处理方式 代码如下: /存储publickey和sessionID -- writeContent: nil - 仅取出数据, 其他 - 修改原内容并提取 +(NSString *)storeFile:(NSString *)fileName content:(NSString *)writeContent {     NSString *pathDocuments=[NSSearchPathForDirectoriesInDomains...
标签: ASP
  Formats passed string based on length. Perfect for emails and text files. --------------------------------------------------------------------------------------- <% ' Company: Sabra Inc ' Author: Dave Hoffenberg ' Date: 10/5/00 ' Function: Formats passed string based on length.  Perfect for emails...
这是本人与同事在工作中对字符串处理的总结,发表出来,希望对大家有些帮助,也希望大家给予指正,谢谢!~ import java.util.*; /** * 文件标题: * * 关于字符串的一些处理方法:   * @版本 1.0 */ public class StringUtil { public StringUtil() { } /** * @descri...
十六进制字符串与数值类型之间转换(C# 编程指南) 以下示例演示如何执行下列任务: 获取字符串中每个字符的十六进制值。 获取与十六进制字符串中的每个值对应的字符。 将十六进制 string 转换为整型。 将十六进制 string 转换为浮点型。 将字节数组转换为十六进制 string。 示例 此示例输出 string 中的每个字符的十六进制值。首先,...
标签: PHP
  // php 中 一个控制字符串输出的函数(中英文),每行显示多少字数,避免英文的影响 // $str 字符串 // $len 每行显示的字数(汉字×2) function rep($str,$len) {        $strlen=strlen($str);        $i=0;     $finstr="...

经验教程

350

收藏

81
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部