Altova XMLSpy 2027 Enterprise Edition

Mit Hilfe dieser Klasse können XML-Attribute oder -Elemente, die Datums- und Uhrzeittypen wie z.B. xs:dateTime haben, verarbeitet werden.

 

Konstruktoren

Name

Beschreibung

DateTime()

Initialisiert eine neue Instanz der DateTime-Klasse auf 12:00:00 Mitternacht, 1. Jänner 0001.

DateTime(__int64 value, short timezone)

Initialisiert eine neue Instanz der DateTime-Klasse. Der Parameter value repräsentiert die Anzahl der Zeiteinheiten (100-Nanosekunden-Intervalle), die seit 12:00:00 Mitternacht, 1. Jänner 0001 verstrichen sind.

DateTime(int year, unsigned char month, unsigned char day, unsigned char hour, unsigned char minute, double second)

Initialisiert eine neue Instanz der DateTime-Klasse auf das als Argument bereitgestellte Jahr, den Monat, Tag, die Stunde, Minute und Sekunde.

 

DateTime(int year, unsigned char month, unsigned char day, unsigned char hour, unsigned char minute, double second, short timezone)

Initialisiert eine neue Instanz der DateTime-Klasse auf das als Argument bereitgestellte Jahr, den Monat, Tag, die Stunde, Minute, Sekunde und Zeitzone. Die Zeitzone wird in Minuten ausgedrückt und kann positiv oder negativ sein. So wird z.B. die Zeitzone "UTC-01:00" als "-60" ausgedrückt.

 

 

Methoden

Name

Beschreibung

unsigned char Day() const

Gibt den Tag des Monats des aktuellen DateTime-Objekts zurück. Die Rückgabewerte liegen im Bereich von 1 bis 31.

int DayOfYear() const

Gibt den Tag des Jahres des aktuellen DateTime-Objekts zurück. Die Rückgabewerte liegen im Bereich von 1 bis 366.

bool HasTimezone() const

Gibt den Booleschen Wert true zurück, wenn für das aktuelle DateTime-Objekt eine Zeitzone definiert ist; gibt andernfalls false zurück.

unsigned char Hour() const

Gibt die Stunde des aktuellen DateTime-Objekts zurück. Die Rückgabewerte liegen im Bereich von 0 bis 23.

static bool IsLeapYear(int year)

Gibt den Booleschen Wert true zurück, wenn das Jahr der DateTime-Klasse ein Schaltjahr ist; gibt andernfalls false zurück.

unsigned char Minute() const

Gibt die Minute des aktuellen DateTime-Objekts zurück. Die Rückgabewerte liegen im Bereich von 0 bis 59.

unsigned char Month() const

Gibt den Monat des aktuellen DateTime-Objekts zurück. Die Rückgabewerte liegen im Bereich von 1 bis 12.

__int64 NormalizedValue() const

Gibt den als Coordinated Universal Time (UTC) ausgedrückten Wert des aktuellen DateTime-Objekts zurück.

double Second() const

Gibt die Sekunde des aktuellen DateTime-Objekts zurück. Die Rückgabewerte liegen im Bereich von 0 bis 59.

void SetTimezone(short tz)

Setzt die Zeitzone des aktuellen DateTime-Objekts auf den als Argument bereigestellten Zeitzonenwert. Das Argument tz wird in Minuten ausgedrückt und kann positiv oder negativ sein.

short Timezone() const

Gibt die Zeitzone des aktuellen DateTime-Objekts in Minuten zurück. Stellen Sie vor Verwendung dieser Methode durch Aufruf der HasTimezone()-Methode sicher, dass das Objekt tatsächlich eine Zeitzone hat.

__int64 Value() const

Gibt den Wert des DateTime-Objekts zurück, ausgedrückt in der Anzahl der Zeiteinheiten (100-Nanosekunden-Intervalle), die seit 12:00:00 Mitternacht, 1. Jänner 0001 verstrichen sind.

int Weekday() const

Gibt den Wochentag des aktuellen DateTime-Objekts als Ganzzahl zurück. Die Werte liegen im Bereich von 0 bis 6, wobei 0 Montag ist (ISO-8601).

int Weeknumber() const

Gibt den Nummer der Kalenderwoche des aktuellen DateTime-Objekts zurück. Die Werte entsprechen der ISO-8601-Norm.

int WeekOfMonth() const

Gibt den Nummer der Woche des Monats des aktuellen DateTime-Objekts zurück. Die Werte entsprechen der ISO-8601-Norm.

int Year() const

Gibt das Jahr des aktuellen DateTime-Objekts zurück.

 

Beispiel

void Example()
{
  // initialize a new DateTime instance to 12:00:00 midnight, January 1st, 0001
  altova::DateTime dt1 = altova::DateTime();
 
  // initialize a new DateTime instance using the year, month, day, hour, minute, and second
  altova::DateTime dt2 = altova::DateTime(2015, 11, 10, 9, 8, 7);
 
  // initialize a new DateTime instance using the year, month, day, hour, minute, second, and UTC +01:00 timezone
  altova::DateTime dt = altova::DateTime(2015, 11, 22, 13, 53, 7, 60);
   
  // Get the value of this DateTime object
  std::cout << "The number of ticks of the DateTime object is: " << dt.Value() << std::endl;
 
  // Get the year
  cout << "The year is: " << dt.Year() << endl;
  // Get the month  
  cout << "The month is: " << (int)dt.Month() << endl;
  // Get the day of the month
  cout << "The day of the month is: " << (int) dt.Day() << endl;
  // Get the day of the year
  cout << "The day of the year is: " << dt.DayOfYear() << endl;
  // Get the hour
  cout << "The hour is: " << (int) dt.Hour() << endl;
  // Get the minute
  cout << "The minute is: " << (int) dt.Minute() << endl;
  // Get the second
  cout << "The second is: " << dt.Second() << endl;
  // Get the weekday
  cout << "The weekday is: " << dt.Weekday() << endl;
  // Get the week number
  cout << "The week of year is: " << dt.Weeknumber() << endl;
  // Get the week in month
  cout << "The week of month is: " << dt.WeekOfMonth() << endl;
 
  // Check whether a DateTime instance has a timezone
  if (dt.HasTimezone() == TRUE)
  {      
    // output the value of the Timezone
    cout << "The timezone is: " << dt.Timezone() << endl;
  }
  else
  {
    cout << "No timezone has been defined." << endl;
  }
 
  // Construct a DateTime object with a timezone UTC+01:00 (Vienna)
  altova::DateTime vienna_dt = DateTime(2015, 11, 23, 14, 30, 59, +60);
  // Output the result in readable format
  cout << "The Vienna time: "
      << (int) vienna_dt.Month()
      << "-" << (int) vienna_dt.Day()
      << " " << (int) vienna_dt.Hour()
      << ":" << (int) vienna_dt.Minute()
      << ":" << (int) vienna_dt.Second()
      << endl;
 
  // Convert the value to UTC time
  DateTime utc_dt = DateTime(vienna_dt.NormalizedValue());
  // Output the result in readable format
  cout << "The UTC time:    "
    << (int) utc_dt.Month()
    << "-" << (int) utc_dt.Day()
    << " " << (int) utc_dt.Hour()
    << ":" << (int) utc_dt.Minute()
    << ":" << (int) utc_dt.Second()
    << endl;
 
  // Check if a year is a leap year
  int year = 2016;
  if( altova::DateTime::IsLeapYear(year) )
  { cout << year << " is a leap year" << endl; }
  else
  { cout << year << " is not a leap year" << endl; }  
}

© 2020-2026 Altova GmbH