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
.NET