StructureUnion und Namen für Wochentage+Monatsnamen zuweisen

Hier könnt Ihr gute, von Euch geschriebene Codes posten. Sie müssen auf jeden Fall funktionieren und sollten möglichst effizient, elegant und beispielhaft oder einfach nur cool sein.
Benutzeravatar
hjbremer
Beiträge: 822
Registriert: 27.02.2006 22:30
Computerausstattung: von gestern
Wohnort: Neumünster

StructureUnion und Namen für Wochentage+Monatsnamen zuweisen

Beitrag von hjbremer »

hier ein weiteres Beispiel wie man mit StructureUnion sehr einfach den Wochentagen und Monaten einen Namen zuweisen kann.
Man könnte natürlich auch StringField oder MID nehmen, aber ich finds so viel schöner, einfacher und schneller :D

Code: Alles auswählen

;HJBREMER PB 4.1 - Windows XP

Structure DatumsNamen

   StructureUnion
    wochenstrg.s{24}
    wochenname.s{3}[0]
   EndStructureUnion

   StructureUnion
    monatsstrg.s{52}
    monatsname.s{4}[0]
   EndStructureUnion

EndStructure   

;Hinweis: die Fragezeichen werden bei einem falschen Datum ausgegeben

name.DatumsNamen\wochenstrg = "??.So.Mo.Di.Mi.Do.Fr.Sa."
name.DatumsNamen\monatsstrg = "???.Jan.Feb.MärzApr.Mai JuniJuliAug.Sep.Okt.Nov.Dez."

;aktuelles Datum per API

GetLocalTime_(sys.systemtime)

Debug name\wochenname[1+sys\wDayOfWeek]
Debug name\monatsname[sys\wMonth]

;oder mit PB

datum = Date()
  tag = 1 + DayOfWeek(datum)    ;fängt bei 0 an
  mon = Month(datum)            ;fängt bei 1 an

Debug name\wochenname[tag]
Debug name\monatsname[mon]

;oder

eigenesDatum$ = "06.05.08"       ;z.B. aus einer Tabelle geholt

datum = ParseDate("%dd.%mm.%yy", eigenesDatum$)
  tag = 0
  mon = 0
  If datum > -1                  ;falsches Datum ergibt -1 
    tag = 1 + DayOfWeek(datum)
    mon = Month(datum)
  EndIf

Debug name\wochenname[tag]
Debug name\monatsname[mon]
         
PS: Kann mir mal jemand verraten warum GetSystemTime und GetLocalTime unterschiedlich sein können, war bei mir so. Dachte immer das wäre gleich.
Purebasic 5.70 x86 5.72 X 64 - Windows 10

Der Computer hat dem menschlichen Gehirn gegenüber nur einen Vorteil: Er wird benutzt
grüße hjbremer
Benutzeravatar
mk-soft
Beiträge: 3856
Registriert: 24.11.2004 13:12
Wohnort: Germany

Beitrag von mk-soft »

Mit GetSystemTime(...) kommt GMT

FF :wink:
Alles ist möglich, fragt sich nur wie...
Projekte ThreadToGUI / EventDesigner V3 / OOP-BaseClass-Modul
Downloads auf MyWebspace / OneDrive
Antworten