2010-10-29 20 views
14

Ben Silverlight bir dizeye bir bayt dizisi dönüştürmek için çalışıyorum, ama şu derleme hatası alıyorum:Bir Bayt Arrayını Silverlight'ta Dize Dönüştürün?

'System.Text.Encoding.GetString (byte [])' nedeniyle koruma seviyesine erişilemez

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

Bunu başka nasıl elde edebilirsiniz:

Bu kullanıyorum yöntemidir?

+0

'UTF8Encoding.UTF8 tarafından

tersi 'genellikle kullanacağınız şey değildir -' normal 'UTF8 kodlamasını (BOM açık olan) almak için' Encoding.UTF8'i kullanırsınız veya 'yeni UTFEncoding (..)' komutunu kullanarak kendi kodunuzu yazabilirsiniz. –

cevap

37

Sen yazabilirsiniz:

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

Silverlight 3 ve 4 only support geçersiz kılmanın. Ayrıca Inicode kodlamayı kullanabilir miyim

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

SL4'te çalışır, daha önce hiç bir şey bilmezsiniz.

2

, sen byte [] dan dize olarak elde edebiliyoruz bu arada

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

,

Byte[] myarray=(new UnicodeEncoding()).getBytes(Stringexpressin); 
İlgili konular