C# · 12月 19, 2021

c c++ char[] 转换string时的自动截断问题

在char[] 转换string时可以直接转换,但当用char[]读取一个二进制文件之后,若char[] 中包含有''时,在转换时会被string检测到并认为字符串末尾,后面内容会被截断,导致转换后字符不全。

解决办法:以循环的方式一个字节一个字节的转换。

string d;

for(size_t i = 0; i < len;i++){

char temp = data[i];

d += temp;

}