char[] 转换string时的自发性截断问题

在char[]
转换string时得直接换,但当用char[]读取一个二进制文件后,若char[]
中富含有’\0’时,在更换时会见于string检测及连以为字符串末尾,后面内容会给截断,导致转换后字符不全。

C#中string,char[],byte[]相互之间转换,manbetx手机网页版

string 转换成 Char[]
  string ss = “我爱你,中国”;
  char[] cc = ss.ToCharArray();

Char[] 转换成string
  string s = new string(cc);

byte[] 与 string 之间的装换
  byte[] bb = Encoding.UTF8.GetBytes(ss);
  string s = Encoding.UTF8.GetString(bb);

http://www.bkjia.com/C\_jc/1211164.htmlwww.bkjia.comtruehttp://www.bkjia.com/C\_jc/1211164.htmlTechArticleC\#中string,char\[\],byte\[\]互相转换, string
转换成 Char[] string ss = “我爱你,中国”; char[] cc =
ss.ToCharArray(); Char[] 转换成string string s = new
string(cc…

解决办法:以循环的章程一个字节一个字节的易。

string d;
for(size_t i = 0; i < len;i++){
char temp = data[i];
d += temp;
}

 

发表评论

电子邮件地址不会被公开。 必填项已用*标注

网站地图xml地图