string与char之间的转换以及如何获得string所占位数

(一)

string 转 char[]

string  str = "abced" ;

char[] result = str.ToCharArray(); 

char[] 转 string

char[] chr =  new char[]{'a','b','c'};

 string str  = new String( chr );

这里说一下char* 和 string 的一点儿区别:char类型可以存储任意的字节数据(主要是针对乱码字符而言),

而string在存储乱码字符的时候,会强制性的给乱码字符加一种编码方式,使之成为一个可解析的字符串,则

会将原本内存中存在的数据给修改掉。(这个在加密解密的时候会出现问题,因此应该使用char*)

(二)如何获取字符串(包含汉字)的字节长度

string str = "abcde汉字";

int len = System.Text.Encoding.Default.GetBytes(str).length ;

/*根据字符串的编码方式不同,可以选择unicode、utf等编码方式*/

原文地址:https://www.cnblogs.com/liwenqiang/p/3059759.html