Wie konvertiere ich ein int auf zwei bytes in C#?
Wie konvertiere ich ein int auf zwei bytes in C#?
- Welcher Teil der int? Zwei bytes sind nicht genug, um zu Kodieren eine ganze 32-bit-integer-Wert.
int
benötigt 4 bytes für die Speicherung. Möchten Sie verlieren die Informationen in die MSBs?- Wer den Signalton downvoted diese. Dies ist eine nützliche und interessante Frage, wie das C Weg, funktioniert plötzlich nicht ohne guten Grund in C# und die offensichtliche APIs nicht vorhanden sind (BitConverter ist langsam und vielfach gebrochen).
- die c-Wege zur Arbeit, wenn Sie den Schalter auf "unsafe" in c#
- Es kann oder kann nicht nützlich sein und interessant, aber es ist auch schlecht angegeben. Die Frage suggeriert ein
int
/Int32
, in dem Fall die OP wollen die meisten-sig-pair-Mädchen? die wenigsten-sig-pair-Mädchen? einige der einzelnen? eine Art von esoterischen xor-ing? Ich habe nicht downvote, aber... - Ich interpretierte es so, dass zu schreiben, die eine Datei-format, die angegebenen 2-byte-integer.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Vorausgesetzt, Sie wollen einfach nur das low-Byte:
Jedoch, da die 'int' ist 'Int32', die Blätter 2 weitere bytes uncaptured.
Können Sie BitConverter.GetBytes, um die bytes aus einem Int32. Es werden 4 Byte im Ergebnis, jedoch nicht 2.
Anderen Weg, es zu tun, obwohl nicht so glatt wie andere Methoden:
Ist es ein int16?
Dies nur zwei bytes in der it.
Option 1:
Option 2:
Ich bevorzuge option 1!