Ich weiß, dass diese Frage zwei Mal zuvor auf Stack-Overflow gestellt wurde, aber dieses Mal frage ich nach der garantiertesten Art und Weise, dies zu tun (Die Art, die den Wert der Daten nicht ändert). Ich möchte von String zu Byte [] dann zurück zu String konvertieren.Beste Art der Konvertierung zwischen Byte [] und String?
string s2 = BitConverter.ToString(bytes); // 82-C8-EA-17
String[] tempAry = s2.Split('-');
byte[] decBytes2 = new byte[tempAry.Length];
for (int i = 0; i < tempAry.Length; i++)
{
decBytes2[i] = Convert.ToByte(tempAry[i], 16);
}
oder den folgenden Code ein:: Ich konnte ByteConverter
, Convert
, Encoding
, BitConverter
, HttpServerUtility.UrlTokenEncode/HttpServerUtility.UrlTokenDecode
den folgenden Code verwenden
private string ToString(byte[] bytes)
{
string response = string.Empty;
foreach (byte b in bytes)
response += (Char)b;
return response;
}
Wenn Sie nicht immer noch bekommen, was ich will, ich will wissen, was Art und Weise funktioniert und was nicht, ich möchte wissen, welcher Weg verwendet werden soll. Hey, ich würde ein Byte-Array mit der geringsten Größe bevorzugen, weil ich dieses Array über das Netzwerk senden werde, und ich werde die ersten 256 Bytes verwenden.
Wenn Sie möchten, dass die, die die letzte Menge an Daten verwendet ['Convert.ToBase64String'] (https://msdn.microsoft.com/en-us/library/system.convert.tobase64string (v = vs.110) .aspx) erhalten Sie eine viel kürzere Zeichenfolge als alle oben aufgeführten Elemente. –
Auch, wie lautet die Frage "[Wie konvertiert man Byte-Array in Hexadezimal-String, und umgekehrt?] (Http://stackoverflow.com/questions/311165/how-do-you-convert-byte-array-to - Hexadezimalstring - und umgekehrt) "nicht Deckung für dich? –