2010-10-29 29 views
14

estoy tratando de convertir una matriz de bytes en una cadena en Silverlight, pero me sale el siguiente error de compilación:¿Convertir una matriz de bytes a cadena en Silverlight?

'System.Text.Encoding.GetString (byte [])' es inaccesible debido a su nivel de protección

este es el método que estoy usando:

string text = UTF8Encoding.UTF8.GetString(myByteArray); 

cómo puedo lograr esto?

+0

'UTF8Encoding.UTF8 'no es lo que generalmente usaría, ya sea que use Encoding.UTF8 para obtener la codificación UTF8' normal '(que tiene BOM activada) o' nueva codificación UTFE (..) 'para que sea suya. –

Respuesta

37

Se puede escribir:

string text = UTF8Encoding.UTF8.GetString(yourByteArray, 0, yourByteArray.Length); 

Silverlight 3 y 4 que only support anulación.

2
string text = Encoding.UTF8.GetString(myByteArray,0,myByteArray.Length); 

Funciona en SL4, no sé nada antes.

2

Usted puede usar también Inicode codificación,

String text=(new UnicodeEncoding()).GetString(barray, 0, barry.Length) 

De esta manera usted es capaz de obtener la mayor cadena de byte [],

viceversa

Byte[] myarray=(new UnicodeEncoding()).getBytes(Stringexpressin); 
Cuestiones relacionadas