我有一个
std::vector<unsigned char> data;
包含二进制读取文件。
如果我把它写到
std::ofstream outputFile("file", std::ios_base::binary);
我会在其中看到常规文字。然后我可以将它读入std :: string,它将包含文本。 是否可以将矢量直接复制到具有相同结果的字符串?
答案 0 :(得分:2)
使用std::string
构造函数的第6种形式:
// Example program
#include <iostream>
#include <string>
#include <vector>
int main()
{
std::vector<unsigned char> data{'a', 'b', 'c'};
std::string str(data.begin(), data.end());
std::cout << str << std::endl;
}
答案 1 :(得分:0)
来自http://www.cplusplus.com/reference/string/string/string/。
使用std::String s(data.begin(), data.end());
。