Szkolenie
Moduł
Formatowanie danych alfanumerycznych do prezentacji w języku C# - Training
Zapoznaj się z podstawowymi metodami w języku C#, aby sformatować dane alfanumeryczne.
Ta przeglądarka nie jest już obsługiwana.
Przejdź na przeglądarkę Microsoft Edge, aby korzystać z najnowszych funkcji, aktualizacji zabezpieczeń i pomocy technicznej.
Jeśli zmienna DOTNET_CLI_UI_LANGUAGE
środowiskowa lub VSLANG
jest ustawiona, dane wyjściowe konsoli interfejsu wiersza polecenia platformy .NET i kodowanie wejściowe zmieni się na UTF-8, aby strona kodowa mogła również zmienić wartość na UTF-8. To nowe zachowanie umożliwia poprawne renderowanie znaków z języków ustawionych przez te zmienne środowiskowe.
Ta zmiana dotyczy tylko systemów operacyjnych Windows (kodowanie było w porządku na innych platformach). Ponadto dotyczy tylko systemu Windows 10 i nowszych wersji, w których kultura interfejsu użytkownika ustawiona przez użytkownika jest nieanglojęzyczna.
Znaki w niektórych językach, w tym w języku chińskim, niemieckim, japońskim i rosyjskim, czasami są wyświetlane jako zwijone znaki lub jak ?
w konsoli programu . Na przykład:
C:\>dotnet build
MSBuild version 17.3.0-preview[...] for .NET
???????????????...
Począwszy od platformy .NET 7 (wersja 7.0.3xx) i .NET 8, znaki są renderowane poprawnie. Zarówno kodowanie, jak i strona kodowa zmieniają się. Na przykład:
C:\>dotnet build
MSBuild version 17.3.0-preview[...] for .NET
正在确定要还原的项目…
Wersje systemu Windows starsze niż Windows 10 1909 nie obsługują w pełni utF-8 i mogą wystąpić problemy po tej zmianie. (Począwszy od zestawu .NET 8 i .NET 7.0.300 SDK, zestaw .NET SDK nie zmienia już kodowania na UTF-8 w tych wersjach. Aby wrócić do korzystania z utF-8 nawet w wersjach systemu Windows 10, które nie obsługują go, użyj zmiennej środowiskowej DOTNET_CLI_FORCE_UTF8_ENCODING
.
Ponadto wystąpiła istniejąca usterka polegająca na tym, że zestaw SDK może wpływać na kodowanie innych poleceń i programów wywoływanych w tym samym wierszu polecenia po zakończeniu wykonywania zestawu SDK. Teraz, gdy zestaw SDK częściej zmienia kodowanie, wpływ tej usterki może wzrosnąć. Usterka została jednak usunięta w zestawach .NET 8 i .NET 7.0.300 SDK. Aby uzyskać więcej informacji, zobacz Zestaw SDK nie zmienia już kodowania konsoli po zakończeniu.
7.0.3xx .NET 8 (wersja zapoznawcza 1)
Ta zmiana może mieć wpływ na zgodność źródła i zgodność binarną. Jest to również zmiana behawioralna.
Korzystanie z interfejsu wiersza polecenia platformy .NET w językach innych niż angielskie zapewnia słabe środowisko.
Deweloperzy, którzy nie używali jeszcze zmiennych VSLANG
i DOTNET_CLI_UI_LANGUAGE
nie mają wpływu na te zmienne. Wpływ powinien być minimalny, ponieważ to ustawienie języka nie działało dobrze w pierwszej kolejności z powodu niezwiązanych znaków. Ponadto może to mieć wpływ tylko na deweloperów korzystających z systemu Windows 10 lub nowszego, z których większość prawdopodobnie korzysta z wersji 1909 lub nowszej.
Starsze scenariusze są już mniej prawdopodobne, aby obsługiwać uszkodzone języki, więc jest mało prawdopodobne, że chcesz użyć innego języka, który może mimo to ujawnić tę przerwę.
VSLANG
i DOTNET_CLI_UI_LANGUAGE
wyłączenie tej zmiany.Opinia o produkcie .NET
.NET to projekt typu open source. Wybierz link, aby przekazać opinię:
Szkolenie
Moduł
Formatowanie danych alfanumerycznych do prezentacji w języku C# - Training
Zapoznaj się z podstawowymi metodami w języku C#, aby sformatować dane alfanumeryczne.