2012-09-08 32 views
18

Estoy intentando guardar una matriz de bytes (byte []) en la configuración de la aplicación C# que devuelve Object List View.Cómo guardar el byte [] en la configuración de la aplicación C#

¿Alguien me puede dar una solución sobre cómo guardar la matriz de bytes en la configuración de la aplicación C#? o algún truco sobre cómo convertir byte [] a algo así como una cadena, luego almacenar, luego recuperar y volver a convertirlo en matriz de bytes y devolverlo a la vista de lista de objetos.

Respuesta

22

Una de las formas más comunes de hacer una cadena de una matriz de bytes que se codifican en Base-64:

string encoded = System.Convert.ToBase64String(toEncodeAsBytes); 

Uso

byte[] bytes = System.Convert.FromBase64String(encoded); 

para obtener sus bytes espalda.

+0

Me olvidé por completo de base64. Gracias por recordarme... –

4

La manera canónica de hacer esto es convertir el byte[] en un string a través de base64 y viceversa.

3

De forma diferente, puede convertir la matriz de bytes a la cadena y la cadena a la matriz de bytes. De esta manera:

1)

string asciiString = ASCIIEncoding.ASCII.GetString(byteArray); 

byte[] byte = ASCIIEncoding.ASCII.GetBytes(asciiString); 

2)

string base64String = System.Convert.ToBase64String(byteArray); 

byte[] byte = System.Convert.FromBase64String(base64String); 

3)

string utf8String = System.Text.Encoding.UTF8.GetString(byteArray); 

byte[] byte = System.Text.Encoding.UTF8.GetBytes(utf8String); 

también se puede utilizar System.Text.Encoding.BigEndianUnicode, System.Text. Encoding.Unicode y System.Text.Encoding.UTF32 para convertir Byte Array en string y string en Byte Array.

Espero que te ayude.

Cuestiones relacionadas