Título: BitConverter Duda Publicado por: CATBro en 29 Octubre 2011, 07:10 am Yo y mis dudas :xD bueno, lo que pasa es que no estoy seguro si estoy entiendo bien el uso de la clase Bitconverter, lo que entiendo es que me permite convertir de un tipo de dato a otro pero puedo elegir cuantos bits(bytes) quiero convertir de ese valor? Estuve practicando pero mi razonamiento no entra con los resultados pero estoy entiendo bien o mal, les mostraria el codigo pero ya no se que le hice Jeje
Saludos Título: Re: BitConverter Duda Publicado por: Unbr0ken en 29 Octubre 2011, 09:00 am ...
La clase BitConverter (http://msdn.microsoft.com/es-es/library/system.bitconverter.aspx) te ayuda a manejar los tipos de valores como una serie de bytes, es decir, convierte un tipo de valor específico en una matriz de bytes y viceversa. Mejor dicho, te convierte matrices de bytes a algún tipo de dato específico integrado en la clase, o de un tipo de dato específico integrado en la clase a una matriz de bytes. Para convertir de un tipo de dato a otro tipo de dato usa la clase Convert (http://msdn.microsoft.com/es-es/library/system.convert.aspx). Título: Re: BitConverter Duda Publicado por: CATBro en 29 Octubre 2011, 10:14 am Entonces de un tipo de dato a una matriz de bytes,
Código: public Packet(byte[] dataStream) En ese codigo , lo que hace es convertir de bytes a enteros, y de bytes a un tipo de clase? pero los parametros donde dice datastream supongo que es el arreglo de bytes de donde hara la conversion, pero el segundo parametro que significa?? Saludos Título: Re: BitConverter Duda Publicado por: Unbr0ken en 29 Octubre 2011, 14:13 pm ...
No sé que IDE estés usando, pero el del Visual Studio 2010 (No recuerdo cuales otras versiones), muestra la definición de los parámetros requeridos en una función de una clase interna de .NET Framework (O de una referencia, en caso de tener definición), en otras palabras, el mismo IDE te dice lo que me estás preguntando: (http://www.freeimagehosting.net/newuploads/7825b.png) Cabe destacar que el parámetro startindex es base cero, por tal, comenzará a obtener los 4 bytes desde la posición establecida a tal base. (Obtiene 4 bytes porque obviamente los valores enteros (int) ocupan 4 bytes en memoria). De todos modos, si te quedan dudas, revisa la función .ToInt32() (http://msdn.microsoft.com/es-es/library/system.bitconverter.touint32.aspx) de la clase BitConverter (http://msdn.microsoft.com/es-es/library/system.bitconverter.aspx). |