我正在尝试通过使用ifstream来读取文件和ofstream来重写文件,但是有一些问题。这是我到目前为止所做的:
std::ifstream File(_str.c_str(), std::ios::binary);
std::string strFile;
strFile.assign( (std::istreambuf_iterator<char>(File) ),
(std::istreambuf_iterator<char>() ) );
File.close();
return strFile;
正在发生的事情是字符串的某些值为null,字符串在那里终止。例如,如果它是
1 'h'
2 'i'
3 0
4 'h'
5 'i'
它会简单地返回“hi”
我尝试了各种for循环以及解决这个问题的方法,例如用空格替换0,然后用“-NULL-”替换0,然后在用户端将“-NULL-”替换为0再次返回0,但我似乎无法在字符串中添加0。
有人能给我一些提示,告诉我如何解决这个问题?我想要做的是通过UDP传输.png,这就是为什么我把文件放到一个字符串
干杯!