Partager via


Valeurs TextInfo.ListSeparator modifiées

Les valeurs par défaut TextInfo.ListSeparator pour différentes cultures ont changé sur tous les systèmes d’exploitation.

Description de la modification

Dans .NET 5.0.0, dans le cadre du passage des bibliothèques NLS aux bibliothèques ICU, les valeurs par défaut TextInfo.ListSeparator pour différentes cultures ont changé sur Windows. Les valeurs du séparateur décimal, obtenues de International Components for Unicode (ICU), ont été utilisées comme valeurs ListSeparator. Sur Linux et macOS, il n’y avait aucune modification des TextInfo.ListSeparator valeurs ; autrement dit, elles continuaient d’utiliser des valeurs de séparateur décimal.

Pour tous les systèmes d’exploitation dans .NET 5.0.1 et versions ultérieures, les valeurs de TextInfo.ListSeparator sont équivalentes aux valeurs obtenues à partir de NLS. Pour Windows, cela signifie que les valeurs sont équivalentes à ce qu’elles étaient dans .NET Framework et .NET Core 1.0 - 3.1. Pour Linux et macOS, les TextInfo.ListSeparator valeurs correspondent désormais aux TextInfo.ListSeparator valeurs de Windows.

Le tableau suivant récapitule les modifications apportées aux TextInfo.ListSeparator valeurs.

Cadre .NET
.NET Core 1.0 - 3.1
.NET 5 .NET 5.0.1
Windows Obtenir auprès de NLS Séparateur décimal de l’ICU.
Peut revenir à NLS.
Équivalent à NLS
Linux et macOS Séparateur décimal de l’ICU Séparateur décimal de l’ICU Équivalent à NLS

Version introduite

5.0.1

Raison de la modification

Les développeurs ont signalé qu’ils utilisent la propriété TextInfo.ListSeparator lors de l’analyse syntaxique des fichiers de valeurs séparées par des virgules (CSV), et les nouvelles TextInfo.ListSeparator valeurs ont perturbé cette analyse.

Si votre code s’appuie sur les valeurs de séparateur décimal précédentes, vous pouvez encoder en dur les valeurs souhaitées TextInfo.ListSeparator .

API affectées