TextInfo.ListSeparator 値の変更

すべてのオペレーティング システムで、さまざまなカルチャの既定の TextInfo.ListSeparator 値が変更されています。

変更の説明

.NET 5.0.0 では、NLS から ICU ライブラリへの切り替えの一環として、Windows 上のさまざまなカルチャの既定の TextInfo.ListSeparator 値が変更されました。 International Components for Unicode (ICU) から取得された小数点区切りの値は、ListSeparator 値として使用されていました。 Linux と macOS 上では、TextInfo.ListSeparator 値に変更はありませんでした。つまり、小数点区切りの値は引き続き使用されました。

.NET 5.0.1 以降のバージョンのすべてのオペレーティング システムでは、TextInfo.ListSeparator の値は NLS から取得される値と同じです。 Windows の場合、これは、値が .NET Framework および .NET Core 1.0 から 3.1 の値と同じであることを意味します。 Linux と macOS の場合、TextInfo.ListSeparator 値は Windows の TextInfo.ListSeparator 値と一致するようになりました。

次の表は、TextInfo.ListSeparator 値の変更をまとめたものです。

.NET Framework
.NET Core 1.0 から 3.1
.NET 5 .NET 5.0.1
Windows NLS から取得されます ICU の小数点区切り。
NLS に戻すことができます。
NLS と同じです
Linux と macOS ICU の小数点区切り ICU の小数点区切り NLS と同じです

導入されたバージョン

5.0.1

変更理由

コンマ区切り値 (CSV) ファイルを解析するときに TextInfo.ListSeparator プロパティを使用していて、新しい TextInfo.ListSeparator 値によってその解析が中断された、と開発者から報告されました。

コードが以前の小数点区切り値に依存している場合は、目的の TextInfo.ListSeparator 値をハードコーディングすることができます。

影響を受ける API