Konvertieren String[] byte [] - array
Ich versuche zu konvertieren, das string-array byte-array.
string[] _str= { "01", "02", "03", "FF"};
zu byte[] _Byte = { 0x1, 0x2, 0x3, 0xFF};
Habe ich versucht den folgenden code, aber es funktioniert nicht.
_Byte = Array.ConvertAll(_str, Byte.Parse);
Und auch, es wäre viel besser, wenn ich könnte konvertieren Sie den folgenden code direkt in das byte-array :
string s = "00 02 03 FF"
zu byte[] _Byte = { 0x1, 0x2, 0x3, 0xFF};
- Ich nehme an, der alle Zeichenketten beschreiben hexadezimale zahlen?
- ja, ist es.....
- Ist das 0x3 ein Tippfehler?
- ja, es fehlen auf den str Teil 🙂
Du musst angemeldet sein, um einen Kommentar abzugeben.
Sollte dies funktionieren:
mit
Konvertieren.Tobyte zum
, können Sie die base von denen zu konvertieren, die, in Ihrem Fall, ist 16.Wenn Sie eine Zeichenfolge, die Trennung der Werte mit Leerzeichen, die Sie verwenden können,
- String.Split
, um es zu teilen:Versuchen, mithilfe von LINQ:
Byte.Parse
wird nicht akzeptieren, ein string in hexadezimal-format.Mit LINQ ist der einfachste Weg:
Wenn Sie eine einzelne Zeichenfolge
string s = "0002FF";
können Sie diese AntwortKönnen Sie immer noch
Array.ConvertAll
wenn Sie es vorziehen, aber Sie müssen angeben, Basis 16. Also entwederoder
string[] _str = stringWithSpaces.Split(' ');
zu erstellen_str
in Erster Linie, wie andere haben darauf hingewiesen.Wenn Sie verwenden möchten, ConvertAll Sie könnten versuchen, diese:
Versuchen, diese: