Aracılığıyla paylaş


TextInfo.ListSeparator değerleri değiştirildi

Farklı kültürler için varsayılan TextInfo.ListSeparator değerler tüm işletim sistemlerinde değişmiştir.

Açıklamayı değiştir

.NET 5.0.0'da, NLS'den ICU kitaplıklarına geçişin bir parçası olarak, Windows'da farklı kültürler için varsayılan TextInfo.ListSeparator değerler değişti. Unicode için Uluslararası Bileşenler'den (ICU) alınan ondalık ayırıcı değerleri, ListSeparator değerleri olarak kullanılmıştır. Linux ve macOS'ta değerlerde TextInfo.ListSeparator bir değişiklik olmadı; başka bir deyişle ondalık ayırıcı değerlerini kullanmaya devam ettiler.

.NET 5.0.1 ve sonraki sürümlerdeki tüm işletim sistemleri için TextInfo.ListSeparator değerleri, NLS'den elde edilecek değerlerle eşdeğerdir. Windows için bu, değerlerin .NET Framework ve .NET Core 1.0 - 3.1'deki değerlerle eşdeğer olduğu anlamına gelir. Linux ve macOS için TextInfo.ListSeparator değerleri artık Windows için olan TextInfo.ListSeparator değerleriyle eşleşmektedir.

Aşağıdaki tablo, TextInfo.ListSeparator değerleri için değişiklikleri özetlemektedir.

.NET Çerçevesi
.NET Core 1.0 - 3.1
.NET 5 .NET 5.0.1
Windows NLS'den alma ICU'dan ondalık ayırıcı.
NLS'ye geri dönebilir.
NLS ile eşdeğer
Linux ve macOS ICU'dan ondalık ayırıcı ICU'dan ondalık ayırıcı NLS ile eşdeğer

Sürüm kullanıma sunulmuştur

5.0.1

Değişiklik nedeni

Geliştiriciler, virgülle TextInfo.ListSeparator ayrılmış değer (CSV) dosyalarını ayrıştırırken özelliğini kullandıklarını ve yeni TextInfo.ListSeparator değerlerin bu ayrıştırma işlemini bozduğunu bildirdi.

Kodunuz önceki ondalık ayırıcı değerleri kullanıyorsa, istediğiniz TextInfo.ListSeparator değerleri sabit kodlayabilirsiniz.

Etkilenen API'ler