Esporta (0) Stampa
Espandi tutto
Il presente articolo è stato tradotto manualmente. Passare il puntatore sulle frasi nell'articolo per visualizzare il testo originale.
Traduzione
Originale

Metodo TimeSpan.Parse (String)

Converte la rappresentazione in forma di stringa di un intervallo di tempo nell'equivalente TimeSpan.

Spazio dei nomi:  System
Assembly:  mscorlib (in mscorlib.dll)

public static TimeSpan Parse(
	string s
)

Parametri

s
Tipo: System.String
Stringa che specifica l'intervallo di tempo da convertire.

Valore restituito

Tipo: System.TimeSpan
Intervallo di tempo che corrisponde a s.

EccezioneCondizione
ArgumentNullException

s è null.

FormatException

s ha un formato non valido.

OverflowException

s rappresenta un numero minore di TimeSpan.MinValue o maggiore di TimeSpan.MaxValue.

-oppure-

Il valore di uno o più componenti relativi a giorni, ore, minuti o secondi non rientra nell'intervallo valido.

Il parametro s contiene una specifica dell'intervallo di tempo sotto forma di:

[ws][-]{ d | [d.]hh:mm[:ss[.ff]] }[ws]

Gli elementi tra parentesi quadre ([ e ]) sono facoltativi. Una selezione dall'elenco delle alternative racchiuse tra parentesi graffe ({ e }) e separate da barre verticali (|) è obbligatoria. Nella tabella riportata di seguito viene descritto ogni elemento.

Elemento

Oggetto di descrizione

sv

Spazio vuoto facoltativo.

-

Segno meno facoltativo, che indica un oggetto TimeSpan negativo.

d

Giorni, con valore compreso tra 0 e 10675199.

.

Simbolo dipendente dalle impostazioni cultura che separa i giorni dalle ore. Il formato invariante utilizza un carattere punto (".").

hh

Ore, con un valore compreso tra 0 e 23.

:

Simbolo del separatore dell'ora dipendente dalle impostazioni cultura. Il formato invariante utilizza un carattere due punti (":").

mm

Minuti, con un valore compreso tra 0 e 59.

ss

Secondi facoltativi, con un valore compreso tra 0 e 59.

.

Simbolo dipendente dalle impostazioni cultura che separa i secondi dalle frazioni di un secondo. Il formato invariante utilizza un carattere punto (".").

ff

Frazioni di secondo facoltative, costituite da 1 a 7 cifre decimali.

I componenti di s devono specificare collettivamente un intervallo di tempo superiore o uguale a TimeSpan.MinValue e inferiore o uguale a TimeSpan.MaxValue.

Il metodo Parse(String) cerca di analizzare s utilizzando tutte le formattazioni specifiche delle impostazioni cultura relative alle impostazioni cultura correnti.

Note per i chiamanti

Quando nella stringa da analizzare un componente dell'intervallo di tempo contiene più di sette cifre, le operazioni di analisi in .NET Framework 3.5 e versioni precedenti potrebbero comportarsi diversamente dalle operazioni di analisi in .NET Framework 4. In alcuni casi, le operazioni di analisi che in .NET Framework 3.5 e nelle versioni precedenti vanno a buon fine potrebbero non avere esito positivo e generare OverflowException in .NET Framework 4. Negli altri casi, le operazioni di analisi che generano un oggetto FormatException in .NET Framework 3.5 e versioni precedenti possono non riuscire e possono generare un oggetto OverflowException in.NET Framework 4. Nell'esempio seguente vengono illustrati entrambi gli scenari.


string[] values = { "000000006", "12.12:12:12.12345678" };
foreach (string value in values)
{
   try {
      TimeSpan interval = TimeSpan.Parse(value);
      Console.WriteLine("{0} --> {1}", value, interval);
   }   
   catch (FormatException) {
      Console.WriteLine("{0}: Bad Format", value);
   }   
   catch (OverflowException) {
      Console.WriteLine("{0}: Overflow", value);
   }
}
// Output from .NET Framework 3.5 and earlier versions:
//       000000006 --> 6.00:00:00
//       12.12:12:12.12345678: Bad Format      
// Output from .NET Framework 4:
//       000000006: Overflow
//       12.12:12:12.12345678: Overflow


Nell'esempio riportato di seguito viene utilizzato il metodo Parse per convertire ciascun elemento di una matrice di stringhe nel valoreTimeSpan. Modifica le impostazioni cultura del sistema correnti e le imposta su croato - Croazia ("HR-hr") e inglese - Stati Uniti ("en-US") per illustrare l'influenza delle impostazioni cultura correnti del sistema sull'operazione di analisi.


using System;
using System.Globalization;
using System.Threading;

public class Example
{
   public static void Main()
   {
      string[] values = { "6", "6:12", "6:12:14", "6:12:14:45", 
                          "6.12:14:45", "6:12:14:45.3448", 
                          "6:12:14:45,3448", "6:34:14:45" };
      string[] cultureNames = { "hr-HR", "en-US"};

      // Change the current culture.
      foreach (string cultureName in cultureNames)
      {
         Thread.CurrentThread.CurrentCulture = new CultureInfo(cultureName);
         Console.WriteLine("Current Culture: {0}", 
                           Thread.CurrentThread.CurrentCulture.Name);
         foreach (string value in values)
         {
            try {
               TimeSpan ts = TimeSpan.Parse(value);
               Console.WriteLine("{0} --> {1}", value, ts.ToString("c"));
            }
            catch (FormatException) {
               Console.WriteLine("{0}: Bad Format", value);
            }   
            catch (OverflowException) {
               Console.WriteLine("{0}: Overflow", value);
            }
         } 
         Console.WriteLine();                                
      }
   }
}
// The example displays the following output:
//    Current Culture: hr-HR
//    6 --> 6.00:00:00
//    6:12 --> 06:12:00
//    6:12:14 --> 06:12:14
//    6:12:14:45 --> 6.12:14:45
//    6.12:14:45 --> 6.12:14:45
//    6:12:14:45.3448: Bad Format
//    6:12:14:45,3448 --> 6.12:14:45.3448000
//    6:34:14:45: Overflow
//    
//    Current Culture: en-US
//    6 --> 6.00:00:00
//    6:12 --> 06:12:00
//    6:12:14 --> 06:12:14
//    6:12:14:45 --> 6.12:14:45
//    6.12:14:45 --> 6.12:14:45
//    6:12:14:45.3448 --> 6.12:14:45.3448000
//    6:12:14:45,3448: Bad Format
//    6:34:14:45: Overflow


.NET Framework

Supportato in: 4, 3.5, 3.0, 2.0, 1.1, 1.0

.NET Framework Client Profile

Supportato in: 4, 3.5 SP1

Supportato in:

Windows 7, Windows Vista SP1 o versione successiva, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008 (componenti di base del server non supportati), Windows Server 2008 R2 (componenti di base del server supportati con SP1 o versione successiva), Windows Server 2003 SP2

.NET Framework non supporta tutte le versioni di ciascuna piattaforma. Per un elenco delle versioni supportate, vedere Requisiti di sistema di .NET Framework.

Aggiunte alla community

AGGIUNGI
Microsoft sta conducendo un sondaggio in linea per comprendere l'opinione degli utenti in merito al sito Web di MSDN. Se si sceglie di partecipare, quando si lascia il sito Web di MSDN verrà visualizzato il sondaggio in linea.

Si desidera partecipare?
Mostra:
© 2014 Microsoft