Bagikan melalui


Nilai TextInfo.ListSeparator berubah

Nilai default TextInfo.ListSeparator untuk budaya yang berbeda telah berubah pada semua sistem operasi.

Deskripsi perubahan

Di .NET 5.0.0, sebagai bagian dari sakelar dari pustaka NLS ke ICU, nilai default TextInfo.ListSeparator untuk budaya yang berbeda berubah pada Windows. Nilai pemisah desimal, yang diperoleh dari Komponen Internasional untuk Unicode (ICU), digunakan sebagai ListSeparator nilai. Di Linux dan macOS, tidak ada perubahan TextInfo.ListSeparator nilai; yaitu, mereka terus menggunakan nilai pemisah desimal.

Untuk semua sistem operasi di .NET 5.0.1 dan versi yang lebih baru, nilai untuk TextInfo.ListSeparator setara dengan nilai yang akan diperoleh dari NLS. Untuk Windows, ini berarti nilai setara dengan apa yang ada di .NET Framework dan .NET Core 1.0 - 3.1. Untuk Linux dan macOS, TextInfo.ListSeparator nilai sekarang cocok dengan TextInfo.ListSeparator nilai untuk Windows.

Tabel berikut ini meringkas perubahan untuk TextInfo.ListSeparator nilai.

.NET Framework
.NET Core 1.0 - 3.1
.NET 5 .NET 5.0.1
Windows Dapatkan dari NLS Pemisah desimal dari ICU.
Dapat beralih kembali ke NLS.
Setara dengan NLS
Linux dan macOS Pemisah desimal dari ICU Pemisah desimal dari ICU Setara dengan NLS

Versi yang diperkenalkan

5.0.1

Alasan untuk berubah

Pengembang melaporkan bahwa mereka menggunakan TextInfo.ListSeparator properti saat mengurai file nilai yang dipisahkan koma (CSV), dan nilai baru TextInfo.ListSeparator memutus penguraian tersebut.

Jika kode Anda bergantung pada nilai pemisah desimal sebelumnya, Anda dapat melakukan hardcode nilai yang diinginkan TextInfo.ListSeparator .

API yang Terpengaruh