Konvertierung von std::string oder string - ^ - byte-array in c++/cli
Ich weiß, das ist eine Häufig gestellte Frage, und ich habe eine klare Antwort für die Konvertierung von std::string oder String^ in ein byte array für das schreiben in einem stream für die tcp-Kommunikation.
Dies ist, was ich versucht habe
bool CTcpCommunication::WriteBytes(const std::string& rdatastr)
{
bool retVal = false;
try
{
if (static_cast<NetworkStream^>(stream) != nullptr)
{
array<Byte>^data = System::Text::Encoding::ASCII->GetBytes(rdatastr);
stream->Write( data, 0, data->Length );
}
}
catch(Exception^)
{
//Ignore, just return false
}
return retVal;
}
Ich weiß, dass hier die GetBytes nicht funktionieren und ich habe auch überprüft, marshalling Optionen zum konvertieren zu std:string zu .NETTO-String aber nicht gefunden aus.Kann mir jemand helfen bei der Lösung dieses..
- Marshalling .NETTO-Saite, die gut beschrieben ist überall, hat nichts mit diesem zu tun, Sie versuchen, einen
array<Byte>
Du musst angemeldet sein, um einen Kommentar abzugeben.
Die Codierung ist schon richtig, keine Konvertierung notwendig. Einfach kopieren:
Was über diese Methode:
Link: http://www.electronic-designer.co.uk/visual-cpp-cli-dot-net/strings/convert-string-to-byte-array
Dieser arbeitete für mich..Danke an Ben