Encoding.Default Proprietà

Definizione

Ottiene la codifica predefinita per questa implementazione di .NET.

public:
 static property System::Text::Encoding ^ Default { System::Text::Encoding ^ get(); };
public static System.Text.Encoding Default { get; }
static member Default : System.Text.Encoding
Public Shared ReadOnly Property Default As Encoding

Valore della proprietà

Codifica predefinita per questa implementazione di .NET.

Commenti

Il comportamento della Default proprietà varia tra implementazioni .NET diverse:

  • In .NET Framework: restituisce la codifica corrispondente alla tabella codici attiva del sistema. Si tratta della stessa codifica restituita da GetEncoding(Int32) quando viene chiamato con un codepage argomento di 0.

  • In .NET Core e versioni successive: restituisce sempre un UTF8Encoding oggetto . Questo comportamento è stato modificato per incoraggiare l'uso delle codifiche Unicode per migliorare la compatibilità multipiattaforma e l'integrità dei dati.

Per ottenere risultati più coerenti tra piattaforme e implementazioni .NET diverse, è consigliabile usare una codifica Unicode specifica, ad esempio UTF-8 direttamente anziché basarsi sulla codifica predefinita. È possibile ottenere la codifica UTF-8 chiamando Encoding.UTF8 o Encoding.GetEncoding(String) con "utf-8".

Avvertimento

Diversi computer possono usare codifiche diverse come predefinita e la codifica predefinita può cambiare in un singolo computer. Se si usa la Encoding.Default codifica per codificare e decodificare i dati trasmessi tra computer o recuperati in momenti diversi nello stesso computer, è possibile che i dati vengano convertiti in modo non corretto. Inoltre, la codifica restituita dalla proprietà usa il miglior metodo di fallback per mappare i caratteri non supportati ai caratteri supportati dalla tabella codici. Per questi motivi, non è consigliabile usare la codifica predefinita. Per garantire che i byte codificati siano decodificati correttamente, è necessario usare una codifica Unicode, ad esempio UTF8Encoding o UnicodeEncoding. È anche possibile usare un protocollo di livello superiore per assicurarsi che lo stesso formato venga usato per la codifica e la decodifica.

La Default proprietà restituisce sempre .UTF8Encoding UTF-8 è supportato in tutti i sistemi operativi (Windows, Linux e macOS) in cui vengono eseguite le app .NET.

Si applica a