Ich möchte eine vector<char>
in eine std::string
konvertieren und eine Umwandlung eine Art und Weise tun.Konvertieren Sie einen Vektor <char> in eine Zeichenfolge mit einer Konvertierung
Ich bin fast da, aber das Ergebnis des folgenden Codes ist ein vector<string>
, während ich gerne eine Zeichenfolge (eine Verkettung aller Zeichenfolge Teile im Vektor) haben würde.
Siehe mein Codebeispiel für Details.
string ConvertHexToAscii(const char input)
{
std::ostringstream oss;
oss << std::hex << std::setw(2) << std::setfill('0') << static_cast<int>(input);
return oss.str();
}
vector<char> readBuffer; // this is my input
readBuffer.push_back(0x1c);
readBuffer.push_back(0x09);
vector<string> resultVec;
std::transform(readBuffer.begin(), readBuffer.end()
, back_inserter(resultVec)
, ConvertHexToAscii);
// resultVec[0] = "1C";
// resultVec[1] = "09";
Das Ergebnis ich brauche, ist eine Zeichenfolge, die "1C09". Wie erreiche ich das mit std::transform
?
Ich mag das - viel einfacher als mit Funktionsausgabe Iteratoren herumzualbern. – Flexo