XMLTimeToDateTime ignoriert Millisekunden

8

Warum ignoriert XMLTimeToDateTime Millisekunden?

%Vor%

danach T2 = '2011-11-11T11: 41: 36.000'

Ich verwende Delphi 2007.

    
Martin Trummer 11.11.2011, 12:04
quelle

1 Antwort

7

Der Code in XSBuiltIns analysiert zwar den Millisekunden-Teil, aber dieser Teil wird niemals in Codierungsfunktionen verwendet.

%Vor%

und

%Vor%

und

%Vor%

Da der letzte von XMLTimeToDateTime aufgerufen wird, ist es durchaus verständlich, dass der Millisekunden-Teil immer 0 ist.

Das Parsen und Speichern von Daten erfolgt in internen (Implementierungsteil-) Klassen, auf die nicht direkt zugegriffen werden kann, außer durch (zerbrochene) Wrapper. IOW, du solltest deinen eigenen Datum / Zeit-Parser schreiben.

Zusätzlich zu all der Hässlichkeit, die in XSBuiltIns gefunden wird, analysiert XMLTimeToDateTime das Datum tatsächlich zweimal. Zuerst wird das TXSDateTime.XSToNative aufgerufen, das das Datum / die Uhrzeit analysiert, das Ergebnis wegwirft und nur die ursprüngliche Zeichenfolge speichert, und dann analysiert TXSCustomDateTime.GetAsUTCDateTime diese Zeichenfolge erneut. Euch!

    
gabr 11.11.2011, 12:49
quelle

Tags und Links