Note
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier les répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de changer de répertoire.
Cet article fournit des remarques supplémentaires à la documentation de référence de cette API.
Avertissement
Différents ordinateurs peuvent utiliser des encodages différents comme encodage par défaut, et l’encodage par défaut peut changer sur un seul ordinateur. Si vous utilisez l’encodage Encoding.Default pour encoder et décoder les données diffusées entre les ordinateurs ou récupérées à des moments différents sur le même ordinateur, elles peuvent traduire ces données de manière incorrecte. En outre, l'encodage retourné par la propriété Default utilise la solution de secours la plus appropriée pour mapper des caractères non pris en charge aux caractères pris en charge par la page de code. Pour ces raisons, l’utilisation de l’encodage par défaut n’est pas recommandée. Pour vous assurer que les octets encodés sont décodés correctement, vous devez utiliser un encodage Unicode, tel que UTF8Encoding ou UnicodeEncoding. Vous pouvez également utiliser un protocole de niveau supérieur pour vous assurer que le même format est utilisé pour l’encodage et le décodage.
Cadre .NET
Dans .NET Framework, la Default propriété obtient toujours la page de codes active du système et crée un Encoding objet qui lui correspond. La page de codes active peut être une page de codes ANSI, qui inclut le jeu de caractères ASCII ainsi que des caractères supplémentaires qui varient selon la page de codes. Étant donné que tous les Default encodages basés sur les pages de codes ANSI perdent des données, envisagez d’utiliser plutôt l’encodage Encoding.UTF8. UTF-8 est souvent identique dans la plage U+00 à U+7F, mais peut encoder des caractères en dehors de la plage ASCII sans perte.
.NET Core
Dans .NET Core, la Default propriété retourne toujours le UTF8Encoding. UTF-8 est pris en charge sur tous les systèmes d’exploitation (Windows, Linux et macOS) sur lesquels les applications .NET Core s’exécutent.