AGB  ·  Datenschutz  ·  Impressum  







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

Problem mit strtodatetime

Ein Thema von bart57 · begonnen am 15. Nov 2007 · letzter Beitrag vom 15. Nov 2007
Antwort Antwort
bart57

Registriert seit: 30. Mär 2004
51 Beiträge
 
#1

Problem mit strtodatetime

  Alt 15. Nov 2007, 08:34
Hallo,

ich möchte folgenden String "14.11.07 05:51" in Datetime konvertiert (mit strtodatetime),
leider funktionniert es nicht.
Ich bekommme immer die Exception EConvertError...
Kann mie jemand helfen ?

Danke im Voraus.
Gruß,Gilles
  Mit Zitat antworten Zitat
Thanatos81
(Gast)

n/a Beiträge
 
#2

Re: Problem mit strtodatetime

  Alt 15. Nov 2007, 08:36
StrToDateTime nutzt das Datums-/Zeitformat aus den Regionaleinstellungen von Windows. Wie sehen die denn bei dir aus?
  Mit Zitat antworten Zitat
bart57

Registriert seit: 30. Mär 2004
51 Beiträge
 
#3

Re: Problem mit strtodatetime

  Alt 15. Nov 2007, 08:42
Hallo und danke,

die sehen so aus: TT.MM.JJJJ und HH:mm:ss .

Ich mache im Deplhi viele TEXT-Dateien-Bearbeitung (laden in DB,usw...)

Ich hätte gern eine möglichkeit dass es immmer funktionniert egal ob den String mit dem Datum
so '14.11.2007 10:20:23' oder so '14.11.07 10:20' ist.


Ich kann ja nicht jedes mal die Datums-/Zeitformat aus den Regionaleinstellungen von Windows ändern
Gibt es vielleicht eine andere Funktion wie strtodatetime ?
Gruß,Gilles
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#4

Re: Problem mit strtodatetime

  Alt 15. Nov 2007, 08:47
Es gibt auch eine überladene Version der Funktion, der du das Format als weiteren Parameter übergeben kannst.
Markus Kinzler
  Mit Zitat antworten Zitat
Thanatos81
(Gast)

n/a Beiträge
 
#5

Re: Problem mit strtodatetime

  Alt 15. Nov 2007, 08:49
Wie mkinzler schon sagte gibt es eine überladene Version, siehe Delphi-Hilfe. Dieser kannst du TFormatSettings übergeben.

Du könntest also eine Variable vom Typ von TFormatSettings mit "TT.MM.JJJJ hh:nn:ss" anlegen und eine mit "TT.MM.JJ hh:nn:ss". Dann prüfst du mit der überladenen Version und der ersten Variablen ob du das umwandeln kannst, schlägt das fehl versuchst du es mit der Überladung und der zweiten Variablen.
  Mit Zitat antworten Zitat
marabu

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

Re: Problem mit strtodatetime

  Alt 15. Nov 2007, 08:49
Hallo,

wo soll da das Problem sein?

ShowMessage(DateTimeToStr(StrToDateTime('15.11.07 12:00'))); Funktioniert bei mir einwandfrei mit dem genannten Format.

Grüße vom marabu
  Mit Zitat antworten Zitat
bart57

Registriert seit: 30. Mär 2004
51 Beiträge
 
#7

Re: Problem mit strtodatetime

  Alt 15. Nov 2007, 08:55
Ja die kenne ich, ich habe es getestet, geht auch nicht:

FormatSettings: TFormatSettings;


GetLocaleFormatSettings(LOCALE_USER_DEFAULT,Format Settings);

FormatSettings.TwoDigitYearCenturyWindow:=1;
FormatSettings.DateSeparator:='.';
FormatSettings.TimeSeparator:=':';
FormatSettings.ShortDateFormat:= 'hh:nn';
FormatSettings.LongDateFormat:= 'hh:nn:ss';
FormatSettings.ShortDateFormat:= 'dd.mm.yy';
FormatSettings.LongDateFormat:= 'dd.mm.yyyy';


strtodatetime(sdate, FormatSettings)
Gruß,Gilles
  Mit Zitat antworten Zitat
bart57

Registriert seit: 30. Mär 2004
51 Beiträge
 
#8

Re: Problem mit strtodatetime

  Alt 15. Nov 2007, 08:56
Sorry, wollte sagen:

FormatSettings.TwoDigitYearCenturyWindow:=1;
FormatSettings.DateSeparator:='.';
FormatSettings.TimeSeparator:=':';
FormatSettings.ShortTimeFormat:= 'hh:nn';
FormatSettings.LongTimeFormat:= 'hh:nn:ss';
FormatSettings.ShortDateFormat:= 'dd.mm.yy';
FormatSettings.LongDateFormat:= 'dd.mm.yyyy';
Gruß,Gilles
  Mit Zitat antworten Zitat
bart57

Registriert seit: 30. Mär 2004
51 Beiträge
 
#9

Re: Problem mit strtodatetime

  Alt 15. Nov 2007, 15:02
es funktionniert ! Danke an alle
Gruß,Gilles
  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 16:10 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