Domanda

Sto lavorando con una specifica che richiede un formato particolare Datetime che non ho avuto necessariamente a lavorare con ancora.

Al momento del processo, un OFX (1 non 2) datetime devono essere bollate (sia DTClient o DTSERVER) in un formato come questo:
    20071015021529,000

Tuttavia, negli esempi si mostra:

20071015021529.000[-8:PST]    

Non ho un problema con il primo tramite una dichiarazione di

DateTime.Now.ToString("yyyyMMddHHmmss.fff")

Posso anche capire come raggiungere %z per ottenere il corretto offset.

Il codice di fuso orario di tre lettere è dove sto inciampare. C'è un modo semplice per ottenere questo in .net, o sto andando a finire per la scrittura di codice per produrre e analizzare quello che mi serve?

È stato utile?

Soluzione

Hai bisogno di scoprire esattamente quali 3 codici lettera di cui ha bisogno. Che cosa sarebbe Europe/Paris dare, per esempio? Personalmente, mi piacerebbe convertire i dati in UTC e il formato in questo modo, a meno che non hai veramente bisogno di conservare le informazioni di fuso orario.

Altri suggerimenti

I codici fuso orario di tre lettere non sono univoci in tutti i paesi e non sono completamente standardizzati. Ad esempio, "CST" può essere l'abbreviazione di "Central Standard Time (USA)" o "cinese Standard Time". Che è corretto dipende dal vostro locale.

Per quanto ne so, non v'è alcuna funzionalità incorporata in .NET Framework per cercare codici come questo, quindi sarà necessario implementare da soli.

Inoltre (ma probabilmente sapete questo), è necessario essere attenti a come si sceglie di implementare questa funzionalità. non v'è necessariamente una corrispondenza uno-a-uno tra gli spostamenti UTC e codici fuso orario. Ad esempio, UTC-0700 potrebbe essere o US Montagna standard Time (MST) o US Pacific Daylight Time (PDT).

Se si intende utilizzare r vi darà formato RFC. Sarà aiutare.

String.Format("{0:r}", dt);  // "Sun, 09 Mar 2008 16:05:07 GMT"   RFC1123

Puoi anche controllare questo SO collegamento , se può aiutare.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top