kodowanie polskich znaków

0

Witam, wysyłam na serwer polskie znaki, jednak są widziane w stringu jako śmieć. Poniżej kawałek kodu gdzie pobieram bajt i zapisuje do stringa

 String    s = System.Text.Encoding.UTF8.GetString(b); 

Wysyłam np. litere ł - kod w UTF8 to c5, w bajcie poprawnie widzę wartość c5 jednakże do stringa nie przypisuje się litera ł tylko śmieć. W czym może być problem ??

0

no ale czym jest b?

0

No i gdzie wyświetlasz to s?

0

b jest tablicą bajtów 1 znakową, czytam znak po znkau

 byte[] b=new byte[1]

a s to string, podglądam go na debugerze i widze krzaki a wyświetlam w richTextBox

1

Hmm a mi się coś wydawało że UTF-8 jest kodowane na dwóch bajtach

http://www.utf8-chartable.de/unicode-utf8-table.pl?start=256
U+0142 ł c5 82 LATIN SMALL LETTER L WITH STROKE

1

UTF-8 jest kodowaniem o zmiennej długości, od 1 do 4 bajtów na znak.

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.