Propriedade System.Text.Encoding.Default
Este artigo fornece observações complementares à documentação de referência para essa API.
Aviso
Computadores diferentes podem usar codificações diferentes como padrão, e a codificação padrão pode ser alterada em um único computador. Se você usar a Encoding.Default codificação para codificar e decodificar dados transmitidos entre computadores ou recuperados em momentos diferentes no mesmo computador, ele poderá converter esses dados incorretamente. Além disso, a codificação retornada pela propriedade usa o Default fallback de melhor ajuste para mapear caracteres sem suporte para caracteres suportados pela página de código. Por esses motivos, o uso da codificação padrão não é recomendado. Para garantir que os bytes codificados sejam decodificados corretamente, você deve usar uma codificação Unicode, como UTF8Encoding ou UnicodeEncoding. Você também pode usar um protocolo de nível superior para garantir que o mesmo formato seja usado para codificação e decodificação.
.NET Framework
No .NET Framework, a propriedade sempre obtém a página de código ativa do sistema e cria um Encoding objeto que corresponde a Default ela. A página de código ativa pode ser uma página de código ANSI, que inclui o conjunto de caracteres ASCII junto com caracteres adicionais que variam de acordo com a página de código. Como todas as Default codificações baseadas em páginas de código ANSI perdem dados, considere usar a Encoding.UTF8 codificação. UTF-8 é muitas vezes idêntico no intervalo U+00 a U+7F, mas pode codificar caracteres fora do intervalo ASCII sem perda.
.NET Core
No .NET Core, a Default propriedade sempre retorna o UTF8Encodingarquivo . O UTF-8 é suportado em todos os sistemas operacionais (Windows, Linux e macOS) nos quais os aplicativos .NET Core são executados.