Zeitvergleich

  • Guten Abend Zusammen,


    wie kann ich 2 Zeiten miteinander vergleichen?

    Ich habe eine Var mit der Zeit aus einer TXT im format 11.03.2010 20:05

    und eine Var mit der Aktuellen Zeit $time = @MDAY&"."[url=''http://www.autoit.de/'mailto:&@MON&'']&@MON&"."&@YEAR[/url]&" "[url=''http://www.autoit.de/'mailto:&@Hour&'']&@Hour&":"&@MIN[/url].

    Jetzt will ich beide Zeit vergleichen mit einer If funkton.

    Wenn die Zeit aus der TXT größer ist, soll zu spät erscheinen und wenn sie kleiner ist soll "noch in der Zeit" erscheinen. Zusätzlich will wenn die Differenz kleiner 45 min ist " Beeilung" angezeigt bekommen.


    Hat wer eine Idee?

    Einmal editiert, zuletzt von billemg (10. April 2010 um 23:59)

  • schau Dir mal die Funktion _DateDiff an.

    Damit solltest Du Dein Problem lösen können.
    Musst halt Deinen String für die Funktion entsprechend formatieren...

    MfG Schnuffel

    "Sarkasmus ist die niedrigste Form des Witzes, aber die höchste Form der Intelligenz."
    Val McDermid

    über mich...

    ich habe meine Erfahrungen hauptsächlich gesammelt in (grobe Übersicht):

    - RibbonBar Automation
    - MySQL Nutzung
    - GUIs in vielerlei Ausprägung
    - Nutzung von Powershell / Batch in AutoIt
    - Windows Automatisierung

    außerhalb von AutoIt:

    - Sprachen: PS, Batch, php, html(5), javascript, (perl eingeschränkt), vbs
    - Powershell (AD, WPF inkl. Multi-Threading, ...)
    - Deployment-Automatisierung ohne SCCM
    - Office-Nutzung mit COM-Object (AutoIt, PowerShell)
    - ActiveDirectory und alles was damit zusammenhängt
    - Hyper-V Clustering (Converged / Hyper Converged)
    - Serverhardware (Konfiguration, Aufbau, Architektur, Betrieb)

    Lieblingsthema:

    günstige Automatisierung von Vorgängen, für die andere Firmen viel Geld nehmen

    more to come ...

  • Danke für den Tipp.

    Aber wie bekomme ich die Zeit in das richtige Format umgewandelt?

  • Beispiel:

    Spoiler anzeigen
    [autoit]

    Global $Time = "11.03.2010 20:05"
    $Time = StringMid($Time, 7, 4) & '/' & StringMid($Time, 4, 2) & '/' & StringLeft($Time, 2) & ' ' & StringRight($Time, 5) & ':00'
    MsgBox(0,"Neues Zeitformat", $Time)

    [/autoit]
  • splitte deinen txt-string doch auf in ein array und vergleiche dann das entsprechende element mit dem entsprechenden zeitmacro. so in etwa:

    [autoit]

    $txtstring = "11.03.2010 20:05"
    $txtstring = StringSplit ( $txtstring, ". :")
    ;$txtstring[1] = 11
    ;$txtstring[2] = 03
    ;$txtstring[3] = 2010
    ;$txtstring[4] = 20
    ;$txtstring[5] = 05

    [/autoit]
  • Jetzt muss ich meinen Vorschlag auch noch loswerden. :D

    Spoiler anzeigen
    [autoit]

    #include <Date.au3>

    [/autoit] [autoit][/autoit] [autoit]

    $aDate = StringSplit("11.03.2010 20:05", " ", 2)
    $aYYYYMMDD = StringSplit($aDate[0], ".", 2)
    $Date = $aYYYYMMDD[2] & "/" & $aYYYYMMDD[1] & "/" & $aYYYYMMDD[0] & " " & $aDate[1] & ":00"

    [/autoit] [autoit][/autoit] [autoit]

    MsgBox(0, "Datum im Format YYYY/MM/DD", $Date)
    MsgBox(0, "Differenz in Tagen", _DateDiff("D", $Date, _NowCalc()))

    [/autoit]
  • na dann ich auch noch ...

    [autoit]

    #Include <Date.au3>
    Local $string = "11.04.2010 20:05"
    $a = StringSplit($string,". :")
    $date_formatted = StringFormat("%s/%s/%s %s:%s:00",$a[3],$a[2],$a[1],$a[4],$a[5])
    MsgBox(0, 'Differenz', "Die Differenz beträgt: " & _DateDiff("n", $date_formatted, _NowCalcDate()&" "&_NowTime()) & " Minuten")

    [/autoit]

    MfG Schnuffel

    "Sarkasmus ist die niedrigste Form des Witzes, aber die höchste Form der Intelligenz."
    Val McDermid

    über mich...

    ich habe meine Erfahrungen hauptsächlich gesammelt in (grobe Übersicht):

    - RibbonBar Automation
    - MySQL Nutzung
    - GUIs in vielerlei Ausprägung
    - Nutzung von Powershell / Batch in AutoIt
    - Windows Automatisierung

    außerhalb von AutoIt:

    - Sprachen: PS, Batch, php, html(5), javascript, (perl eingeschränkt), vbs
    - Powershell (AD, WPF inkl. Multi-Threading, ...)
    - Deployment-Automatisierung ohne SCCM
    - Office-Nutzung mit COM-Object (AutoIt, PowerShell)
    - ActiveDirectory und alles was damit zusammenhängt
    - Hyper-V Clustering (Converged / Hyper Converged)
    - Serverhardware (Konfiguration, Aufbau, Architektur, Betrieb)

    Lieblingsthema:

    günstige Automatisierung von Vorgängen, für die andere Firmen viel Geld nehmen

    more to come ...