tengo que convertir los valores (doble/flotador en C#) en bytes y de necesitar algo de ayuda ..
// tipo de datos a largo 4byte -99999999,99 a 99999999,99
// tipo de datos a largo 4byte -99999999,9 a 99999999,9
// tipo de datos corta 2byte -999,99 a 999,99
// tipo de datos corta 2byte -999,9 a 999,9
En mi " mundo en casa "simplemente lo encadenaría y ASCII.GetBytes().
Pero ahora, en este mundo, tenemos que hacer menos espacio posible.
Y de hecho que '-99999999,99' toma 12 bytes en lugar de 4! si es un tipo de datos 'largo'.Convertir tipo de datos 'largo' de matriz de bytes
[EDIT]
Debido al poco de ayuda y contesto que adjuntar algunos resultados aquí,
long lng = -9999999999L;
byte[] test = Encoding.ASCII.GetBytes(lng.ToString()); // 11 byte
byte[] test2 = BitConverter.GetBytes(lng); // 8 byte
byte[] mybyt = BitConverter.GetBytes(lng); // 8 byte
byte[] bA = BitConverter.GetBytes(lng); // 8 byte
Hay todavía tiene que ser un detalle izquierda para averiguar. El lng-variabel obtuvo 8 bytes incluso si contiene valores más bajos, es decir, 99951 (no incluiré la muestra ToString()).
Si el valor es incluso "más corto", lo que significa -999,99 - 999,99 solo ocupará 2 bytes de espacio.
[EDIT FIN]
Sabes que long y short son de tipo integral, entonces no hay decimales, ¿verdad? ¡Y que un largo es 8 bytes, no 4! Eso es "int". – xanatos
Me sorprende cuántas respuestas hay cuando la pregunta ni siquiera tiene sentido. ¿Qué tiene él y qué está tratando de obtener? –
@xanatos Vale la pena mencionar su punto. Los valores son flotantes al principio (pero esa es otra pregunta). – Independent