2013-04-12 26 views

risposta

6

Non esiste una cosa come "un persiano DateTime". Un valore DateTime è sempre un valore di calendario gregoriano, senza una formattazione specifica. Quando lo formattate (di solito chiamando ToString) potete determinare come è formattato - e se usate una cultura che usa un calendario non gregoriano, convertirà il valore originale in quel calendario.

Così, per esempio, se si voleva analizzare input da un utente persiana e poi convertire che alla data equivalente che un utente inglese avrebbe capito, è possibile utilizzare:

DateTime date = DateTime.Parse(text, persianCulture); 
string englishText = date.ToString(englishCulture); 
2

io non credo che ci è un termine chiamato Persetime Datetime di English Datetime.

Da MSDN;

Il tipo di valore DateTime rappresenta date e gli orari con valori che vanno da 00:00:00 (mezzanotte), 1 gennaio 0001 Anno Domini (Common Era) attraverso 23:59:59, 31 dicembre 9999 AD (CE) nel calendario Gregoriano .

Quando si utilizza Culture con il vostro DateTime, si convertirà automaticamente a questo calendario.

La classe CultureInfo fornisce informazioni specifiche della cultura, come ad esempio lingua, sottolingua, paese/regione, il calendario, e le convenzioni associato a una particolare cultura. Questa classe fornisce inoltre l'accesso a in istanze specifiche della cultura degli oggetti DateTimeFormatInfo, NumberFormatInfo, CompareInfo e TextInfo. Questi oggetti contengono le informazioni richieste per le operazioni specifiche della cultura, tali come custodia, date di formattazione e numeri e confronto di stringhe.

1

È possibile utilizzare DateTime.Parse()

System.Globalization.CultureInfo cultureinfo = 
    new System.Globalization.CultureInfo("en-US"); 
    DateTime dt = DateTime.Parse("11/04/2013", cultureinfo); 
Problemi correlati