2010-10-29 22 views
14

Próbuję przekonwertować tablicę bajtów na ciąg w Silverlight, ale pojawia się następujący błąd kompilacji:Konwertuj tablicę bajtów na ciąg w Silverlight?

„System.Text.Encoding.GetString (byte [])” jest niedostępny ze względu na jego poziom ochrony

jest to metoda, która używam:

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

jaki inny sposób można to osiągnąć?

+0

„UTF8Encoding.UTF8 "nie jest to, czego zwykle używasz - możesz użyć Encoding.UTF8, aby uzyskać" normalne "kodowanie UTF8 (z włączoną listą BOM) lub" nowe UTFEncoding (..) ", aby uzyskać własne. –

Odpowiedz

37

Można napisać:

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

Silverlight 3 i 4 only support które zastępują.

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

Działa w SL4, nie wiem o niczym wcześniej.

2

można użyć Inicode kodowanie także

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

W ten sposób jesteś w stanie uzyskać jako ciąg z byte [],

odwrotnie przez

Byte[] myarray=(new UnicodeEncoding()).getBytes(Stringexpressin); 
Powiązane problemy