Condividi tramite


Risoluzione dei problemi relativi alle eccezioni: System.FormatException

Un'eccezione FormatException viene generata da un metodo che analizza o formatta un tipo quando il formato di un argomento non soddisfa le specifiche dei parametri del metodo.

Generazioni di eccezioni di formato

Formattazione

La formattazione è il processo di conversione di un'istanza di una classe, una struttura o un valore di enumerazione nella relativa rappresentazione di stringa, eseguito spesso in modo che la stringa risultante possa essere visualizzata dagli utenti o usata per salvare lo stato dell'oggetto.

Ad esempio, Int32.ToString(String) accetta un parametro di stringa che identifica una stringa di formato standard o personalizzata e restituisce la rappresentazione di stringa del numero. Il metodo genera un'eccezione FormatException se la stringa di formato non è valida o non è supportata.

Formattazione composita

La formattazione composita accetta un elenco di oggetti e una stringa di formato composto come input. Una stringa di formato composto è costituita da testo fisso alternato a segnaposto indicizzati, denominati elementi di formato, che corrispondono agli oggetti dell'elenco. L'operazione di formattazione produce una stringa risultato costituita dal testo fisso originale alternato alla rappresentazione di stringa degli oggetti dell'elenco.

String.Format e Console.WriteLine sono esempi di metodi che eseguono la formattazione composita. I metodi che usano la formattazione composita generano un'eccezione FormatException se la stringa di formato non è valida oppure se l'indice di un elemento di formato è minore di zero oppure maggiore o uguale al numero di argomenti.

Analisi

L'analisi è il processo di conversione di una stringa che rappresenta un tipo di base di .NET Framework in tale tipo di base. Ad esempio, un'operazione di analisi viene usata per convertire una stringa in un numero a virgola mobile o in un valore di data e ora.

Ad esempio, Int32.Parse(String) Parse converte la rappresentazione di stringa di un valore di data e ora nel relativo oggetto DateTime equivalente usando le informazioni sul formato specifiche delle impostazioni cultura indicate nel parametro IformatProvider. Se la stringa non è nel formato corretto, viene generata un'eccezione FormatException.

Evitare le eccezioni FormatException

L'articolo di riferimento della classe FormatException include le cause e le soluzioni comuni degli errori FormatException.

Le sezioni di MSDN Library Formattazione di tipi in .NET Framework e Analisi di stringhe in .NET Framework contengono le informazioni sulla formattazione e l'analisi corrette dei tipi.

Formattazione composita

Formattazione composta

Tipi numerici

Stringhe di formato numerico standard

Stringhe di formato numerico personalizzate

Analisi di stringhe numeriche in .NET Framework

Tipi data e ora e TimeSpan

Stringhe di formato di data e ora standard

Stringhe di formato data e ora personalizzate

Stringhe di formato TimeSpan standard

Stringhe di formato TimeSpan personalizzate

Analisi delle stringhe di data e ora in .NET Framework

Altri tipi

Stringhe di formato di enumerazione

Analisi di altre stringhe in .NET Framework