AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Datum-String in Datetime wandeln

Ein Thema von matz · begonnen am 22. Jul 2005 · letzter Beitrag vom 22. Jul 2005
Antwort Antwort
matz

Registriert seit: 9. Sep 2003
31 Beiträge
 
#1

Datum-String in Datetime wandeln

  Alt 22. Jul 2005, 10:48
Hallo Gemeinde,

gibt es einen einfachen Weg diesen String '18 Jul 2005 09:25:52' in ein DateTime-Format zu wandeln?

Danke schon mal für die Hilfe
Gruße Matz
  Mit Zitat antworten Zitat
Benutzerbild von Matze
Matze
(Co-Admin)

Registriert seit: 7. Jul 2003
Ort: Schwabenländle
14.929 Beiträge
 
Turbo Delphi für Win32
 
#2

Re: Datum-String in Datetime wandeln

  Alt 22. Jul 2005, 10:59
Hallo!

Versuche es mal mit Delphi-Referenz durchsuchenStrToDateTime.
  Mit Zitat antworten Zitat
matz

Registriert seit: 9. Sep 2003
31 Beiträge
 
#3

Re: Datum-String in Datetime wandeln

  Alt 22. Jul 2005, 11:11
Das habe ich bereits getestet - geht leider nicht

Zitat:
Der in S angegebene String muss das aktuell in der Systemsteuerung festgelegte Format haben. In Deutschland ist das Format normalerweise DD.MM.YYYY HH:MM:SS. Die Angaben AM und PM sowie die Sekunden sind optional. Verwenden Sie das 24-Stunden-Format (7:45 PM entspricht dann 19:45), wenn AM oder PM nicht angegeben wird.

Jahresangaben zwischen 0 und 99 werden mithilfe der globalen Variablen TwoDigitYearCenturyWindow konvertiert. Dieser Wert wird entweder in einer globalen Variablen (erste Form) oder als Feld des Parameters FormatSettings (zweite Form) gespeichert. Weitere Informationen finden Sie unter "Formatvariablen für Datums-/Zeitangaben".
Gruß Matz
  Mit Zitat antworten Zitat
barf00s
(Gast)

n/a Beiträge
 
#4

Re: Datum-String in Datetime wandeln

  Alt 22. Jul 2005, 11:27
FormatDateTime
StrToDateTime

sind deine Freunde um das Problem zu beheben
  Mit Zitat antworten Zitat
matz

Registriert seit: 9. Sep 2003
31 Beiträge
 
#5

Re: Datum-String in Datetime wandeln

  Alt 22. Jul 2005, 11:43
Ja der Tipp hilft mir auch nicht weiter

FormatDateTime formatiert ein DateTimeWert in einen String

Ich habe aber bereits einen String '18 Jul 2005 09:25:52' diesen muß ich in ein DateTimeWert wandeln.

Sollte ich hier aber etwas übersehen bitte ich um einen leichten Wink mit dem Zaunpfahl (ein kleines Beispiel)

Gruß Matz
  Mit Zitat antworten Zitat
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#6

Re: Datum-String in Datetime wandeln

  Alt 22. Jul 2005, 11:45
Hallo Matz,

die Format-Strings der Unit SysUtils sind eher auf die Ausgabe gerichtet. Beim Parsen von Strings bist du abseits des unterstützten Normalfalls (nur Zahlen und Trennzeichen) auf deine eigene Findigkeit angewiesen.

Nicht elegant, aber funktioniert mit deinem Beispiel:

Delphi-Quellcode:
function StrToDateTimeEx(s: string): TDateTime;
var
  i: integer;
  fs: TFormatSettings;
  sl: TStringList;
begin
  sl := TStringList.Create;
  sl.Delimiter := ' ';
  sl.DelimitedText := s;
  if sl.Count = 4 then begin
    for i := 1 to 12 do
      if ShortMonthNames[i] = sl[1] then begin
        sl[1] := RightStr('0' + IntToStr(i), 2);
        Break;
      end;
    s := Format('%s.%s.%s %s', [sl[0], sl[1], sl[2], sl[3]]);
    sl.Free;
  end;
  GetLocaleFormatSettings(GetUserDefaultLCID, fs);
  with fs do begin
    fs.DateSeparator := '.';
    fs.ShortDateFormat := 'dd.mm.yyyy';
  end;
  Result := StrToDateTime(s, fs);
end;
Grüße vom marabu
  Mit Zitat antworten Zitat
matz

Registriert seit: 9. Sep 2003
31 Beiträge
 
#7

Re: Datum-String in Datetime wandeln

  Alt 22. Jul 2005, 11:54
Super Marabu - es funktioniert einwandfrei

Danke noch einmal
und Gruß Matz
  Mit Zitat antworten Zitat
barf00s
(Gast)

n/a Beiträge
 
#8

Re: Datum-String in Datetime wandeln

  Alt 22. Jul 2005, 11:57
marabu du bistne pätze

musst du den kiddies immer gleich alles verraten - die sollen gefälligst selbst mal drauf kommen, anstatt nur fertigen source zu "copy & pasten"

sonst geht der lerngedanke ja verloren ...
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 18:33 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz