Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Ten artykuł zawiera dodatkowe uwagi dotyczące dokumentacji referencyjnej dla tego interfejsu API.
Ostrzeżenie
Różne komputery mogą używać różnych kodowań jako domyślnych, a domyślne kodowanie może ulec zmianie na jednym komputerze. Jeśli używasz Encoding.Default kodowania do kodowania i dekodowania danych przesyłanych strumieniowo między komputerami lub pobieranych w różnym czasie na tym samym komputerze, może to spowodować nieprawidłowe tłumaczenie tych danych. Ponadto kodowanie zwracane przez Default właściwość używa najlepszego dopasowania rezerwowego do mapowania nieobsługiwanych znaków na znaki obsługiwane przez stronę kodową. Z tych powodów używanie kodowania domyślnego nie jest zalecane. Aby upewnić się, że zakodowane bajty są prawidłowo dekodowane, należy użyć kodowania Unicode, takiego jak UTF8Encoding lub UnicodeEncoding. Można również użyć protokołu wyższego poziomu, aby upewnić się, że ten sam format jest używany do kodowania i dekodowania.
Środowisko .NET Framework
W programie .NET Framework Default właściwość zawsze pobiera aktywną stronę kodu systemu i tworzy Encoding obiekt, który mu odpowiada. Aktywna strona kodu może być stroną kodową ANSI, która zawiera zestaw znaków ASCII wraz z dodatkowymi znakami, które różnią się w zależności od strony kodowej. Ponieważ wszystkie kodowania oparte na stronach kodowych ANSI tracą dane, rozważ używanie kodowania Default zamiast. UtF-8 jest często identyczny w zakresie U+00 do U+7F, ale może kodować znaki poza zakresem ASCII bez utraty.
.NET Core
W programie .NET Core, właściwość Default zawsze zwraca UTF8Encoding wartość. UtF-8 jest obsługiwany we wszystkich systemach operacyjnych (Windows, Linux i macOS), na których działają aplikacje platformy .NET Core.