sintaxis sbyte que int16 ejemplo c# .net string byte bits

sbyte - signed byte c#



Byte a Binary String C#- Muestra los 8 dígitos (4)

Quiero mostrar un byte en el cuadro de texto. Ahora estoy usando:

Convert.ToString(MyVeryOwnByte, 2);

Pero cuando el byte tiene 0 al principio, esos 0 se están ejecutando. Ejemplo:

MyVeryOwnByte = 00001110 // Texbox shows -> 1110 MyVeryOwnByte = 01010101 // Texbox shows -> 1010101 MyVeryOwnByte = 00000000 // Texbox shows -> <Empty> MyVeryOwnByte = 00000001 // Texbox shows -> 1

Quiero mostrar los 8 dígitos.


Cómo lo hace depende de cómo quiera que se vea su salida.

Si solo quiere "00011011", use una función como esta:

static string Pad(byte b) { return Convert.ToString(b, 2).PadLeft(8, ''0''); }

Si desea una salida como "000 11011 ", use una función como esta:

static string PadBold(byte b) { string bin = Convert.ToString(b, 2); return new string(''0'', 8 - bin.Length) + "<b>" + bin + "</b>"; }

Si desea una salida como "0001 1011", una función como esta podría ser mejor:

static string PadNibble(byte b) { return Int32.Parse(Convert.ToString(b, 2)).ToString("0000 0000"); }


Puedes crear un método de extensión:

public static class ByteExtension { public static string ToBitsString(this byte value) { return Convert.ToString(value, 2).PadLeft(8, ''0''); } }


Rellene la cadena con ceros. En este caso, es PadLeft(length, characterToPadWith) . Métodos de extensión muy útiles. PadRight() es otro método útil.


Convert.ToString(MyVeryOwnByte, 2).PadLeft(8, ''0'');

Esto llenará el espacio vacío a la izquierda con ''0'' para un total de 8 caracteres en la cadena