sobota, 5 marca 2011

Zmiana kodowania znaków w C#

Ostatnio pracując nad zleconym projektem musiałem zmieniać kodowanie string'a, i otrzymywać zapis bajtowy string'a, który następnie przekazywałem jako parametr metody.
Do zmiany kodowania użyć można Encoder'a któregoś kodowania z kolekcji System.Text. Przykład takiego użycia:
System.Text.ASCIIEncoding encoding = new ASCIIEncoding();
Kodowanie takie można następnie wykorzystać do otrzymania tablicy bajtowej, będącej reprezentacją zapisu string'a w danym kodowaniu. Dla przykładu powyżej:
byte[] napis_w_ascii = encoding.GetBytes("napiś");

Polecam zapoznać się z kolekcją klas System.Text.Encoding i metodami dostępnymi dla różnych kodowań