AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Object-Pascal / Delphi-Language Delphi Komisches Datum mit DateTime und INI-Datei
Thema durchsuchen
Ansicht
Themen-Optionen

Komisches Datum mit DateTime und INI-Datei

Ein Thema von Spurius · begonnen am 23. Mär 2005 · letzter Beitrag vom 23. Mär 2005
Antwort Antwort
Seite 2 von 3     12 3      
Benutzerbild von TheMiller
TheMiller

Registriert seit: 19. Mai 2003
Ort: Gründau
2.480 Beiträge
 
Delphi XE7 Architect
 
#11

Re: Komisches Datum mit DateTime und INI-Datei

  Alt 23. Mär 2005, 19:59
Ich kann nur sagen, dass ich nicht in einer ini, sondern in einer MySQL-Datenbank auf einem Linux-Rechner gespeichert habe und das Ergebnis war das gleiche...
Bisheriger Nutzername "DJ-SPM"
  Mit Zitat antworten Zitat
Spurius

Registriert seit: 19. Aug 2003
294 Beiträge
 
Delphi 7 Professional
 
#12

Re: Komisches Datum mit DateTime und INI-Datei

  Alt 23. Mär 2005, 20:13
Hallo,
also wenn ich das Datum gleich in einen String umwandel, steht das Datum wieder korrekt in der Ini-Datei, beim auslesen wird allerdings ein leerer Wert zurückgegeben.
  Mit Zitat antworten Zitat
Benutzerbild von Binärbaum
Binärbaum

Registriert seit: 19. Jan 2005
Ort: Elstra
764 Beiträge
 
Delphi 7 Enterprise
 
#13

Re: Komisches Datum mit DateTime und INI-Datei

  Alt 23. Mär 2005, 20:14
Zitat von Spurius:
Das Problem liegt ja nicht an der DateTime Komponente, da das Datum ja richtig gespeichert wird, das Problem scheint bei der Umwandlung zu liegen.
Wie wandelst du das Datum denn um? Mit Delphi-Referenz durchsuchenDateToStr?
There are exactly 10 kinds of people: those who understand binary, and those who don't.
---
"Software reift beim Kunden. Bei Hardware ist es anders: Hardware fault beim Kunden." - Rainer G. Spallek
  Mit Zitat antworten Zitat
Spurius

Registriert seit: 19. Aug 2003
294 Beiträge
 
Delphi 7 Professional
 
#14

Re: Komisches Datum mit DateTime und INI-Datei

  Alt 23. Mär 2005, 20:19
Ja, mit DateToStr().
  Mit Zitat antworten Zitat
Benutzerbild von Binärbaum
Binärbaum

Registriert seit: 19. Jan 2005
Ort: Elstra
764 Beiträge
 
Delphi 7 Enterprise
 
#15

Re: Komisches Datum mit DateTime und INI-Datei

  Alt 23. Mär 2005, 20:22
Also ich hatte mit Delphi-Referenz durchsuchenDateToStr bis jetzt noch keine Probleme. Vielleicht wird vor der Umwandlung noch irgendwo auf das Datum zugegriffen und selbiges geändert?
Du könntest ja mal den entsprechenden Codeabschnitt posten.
There are exactly 10 kinds of people: those who understand binary, and those who don't.
---
"Software reift beim Kunden. Bei Hardware ist es anders: Hardware fault beim Kunden." - Rainer G. Spallek
  Mit Zitat antworten Zitat
Spurius

Registriert seit: 19. Aug 2003
294 Beiträge
 
Delphi 7 Professional
 
#16

Re: Komisches Datum mit DateTime und INI-Datei

  Alt 23. Mär 2005, 20:28
Hallo,
das ganze soll eine Fischfangverwaltungssoftware werden, wir fahren morgen los nach Norwegen:

Schreiben:
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
Var Ini: TInifile;
    Fangzahl: Integer;
    Test: String;
begin
 Ini := TInifile.Create(ExtractFilePath(ParamStr(0)) +'angeln.ini');
 Fangzahl := Ini.ReadInteger(Combobox1.Text, 'Fangzahl',0);
 Test := FileListBox1.Directory + FileListBox1.FileName;
 Ini.WriteString(Combobox1.Text + IntToStr(Fangzahl),'Fischart',combobox2.Text);
 Ini.WriteString(Combobox1.Text + IntToStr(Fangzahl),'Fischgewicht',Edit1.Text);
 Ini.WriteString(Combobox1.Text + IntToStr(Fangzahl),'Fischlaenge',Edit2.Text);
 Ini.WriteString(Combobox1.Text + IntToStr(Fangzahl),'Datum', DateToStr(date1.Date)); // <-- DA
 Ini.WriteInteger(Combobox1.Text, 'Fangzahl', Fangzahl + 1);
 Ini.WriteString(Combobox1.Text + IntToStr(Fangzahl),'Bildpfad',Test);
 Combobox1.Clear;
 Combobox2.Clear;
 Edit1.Text := '';
 Edit2.Text := '';
 Date1.DateTime := Date1.Date;
 Combobox_fill;

end;

Lesen:
Delphi-Quellcode:
procedure tform1.make_tree;
var Ini: TInifile;
    Node1, Node2, Node3: TTreeNode;
    i,j,k,l, Angleranzahl, Anglerfischanzahl: Integer;
    Fangdatum, Name, Fischart, Anglerfischart, ActiveAngler, Fischgewicht, Fischlaenge, Bildpfad: String;
    deci: Boolean;
begin
  Ini := TInifile.Create(ExtractFilePath(ParamStr(0)) + 'angeln.ini');
  Angleranzahl := Ini.ReadInteger('Einstellungen', 'Angleranzahl',0);
  For i := 0 to Angleranzahl - 1 do begin
   Name := Ini.ReadString('Angler', 'Angler' + IntToStr(i), '');
   node1 := TreeView1.Items.Add(nil, Name);
   ActiveAngler := Ini.ReadString('Angler','Angler' + IntToStr(i),'');
   Anglerfischanzahl := Ini.ReadInteger(ActiveAngler, 'Fangzahl', 0);
    For j := 0 to Anglerfischanzahl - 1 do begin
     Bildpfad := Ini.ReadString(ActiveAngler + IntToStr(j), 'Bildpfad', '');
     Anglerfischart := Ini.ReadString(ActiveAngler + IntToStr(j), 'Fischart', '');
     Fischgewicht := Ini.ReadString(ActiveAngler + IntToStr(j), 'Fischgewicht','');
     Fangdatum := Ini.ReadString(ActiveAngler + IntToStr(j), 'Fangdatum',''); // <--DA
     Fischlaenge := Ini.ReadString(ActiveAngler + IntToStr(j), 'Fischlaenge','');
     node1 := TreeView1.Items.AddChild(node1, anglerfischart);
     Treeview1.Items.AddChild(node1, Fischgewicht);
     Treeview1.Items.AddChild(node1, Fischlaenge);
     Treeview1.Items.AddChild(node1, Fangdatum);
     Treeview1.Items.AddChild(node1, Bildpfad);
     node1 := node1.Parent;
    end;
end;
end;
Weiss nicht ob euch das was nützt, ist nicht sehr sauber programmiert.
  Mit Zitat antworten Zitat
Benutzerbild von TeronG
TeronG

Registriert seit: 19. Jul 2004
Ort: München
960 Beiträge
 
Delphi 2007 Professional
 
#17

Re: Komisches Datum mit DateTime und INI-Datei

  Alt 23. Mär 2005, 20:33
Zitat von Spurius:
Hallo,
Fangdatum := Ini.ReadDate(ActiveAngler + IntToStr(j), 'Fangdatum',0); Ich glaube es liegt an der 0 hinten, ich weiss nur nicht was ich da sonst reinschreiben soll.
Ich hatte schon öfter mal (zu PE zeiten ) ein Datum in eine ini geschrieben und gelesen klappte bis dato immer recht anstandslos...

Ist denn Fangdatum Global bzw. wandelst du Fangdatum in der Gleichen Function/procedure um?
denn 30.12.1899 hört sich ziemlich nach "0" an Wirf uns doch mal evtl bissl mer Source in die Runde ^^
[EDIT] sorry hab die 2te seite übersehen [/edit]
龍 Der Unterschied zwischen Theorie und Praxis ist in der Praxis größer als in der Theorie.
  Mit Zitat antworten Zitat
Benutzerbild von Binärbaum
Binärbaum

Registriert seit: 19. Jan 2005
Ort: Elstra
764 Beiträge
 
Delphi 7 Enterprise
 
#18

Re: Komisches Datum mit DateTime und INI-Datei

  Alt 23. Mär 2005, 20:42
Also beim Schreiben verwendest du
Ini.WriteString(Combobox1.Text + IntToStr(Fangzahl),'Datum', DateToStr(date1.Date)); und beim Lesen
Fangdatum := Ini.ReadString(ActiveAngler + IntToStr(j), 'Fangdatum',''); Es wird also immer der Default-Wert zurückgegeben, da 'Fangdatum' und 'Datum' zwei unterschiedliche Strings sind. Es wird also immer ein wert für Datum geschrieben, aber versucht, Fangdatum zu lesen. Da letzterer aber logischerweise nicht in die Ini geschrieben wurde, wird dir immer der default-Wert, bei dir also 0, oder halt der 31.12.1899, zurückgegeben.

MfG
Binärbaum
There are exactly 10 kinds of people: those who understand binary, and those who don't.
---
"Software reift beim Kunden. Bei Hardware ist es anders: Hardware fault beim Kunden." - Rainer G. Spallek
  Mit Zitat antworten Zitat
Benutzerbild von TeronG
TeronG

Registriert seit: 19. Jul 2004
Ort: München
960 Beiträge
 
Delphi 2007 Professional
 
#19

Re: Komisches Datum mit DateTime und INI-Datei

  Alt 23. Mär 2005, 20:44
Ini.WriteString(Combobox1.Text + IntToStr(Fangzahl),'Datum', DateToStr(date1.Date)); // <-- DA
Fangdatum := Ini.ReadString(ActiveAngler + IntToStr(j), 'Fangdatum',''); // <--DA

Mir ist jetzt auf die schnelle (du musst ja bald weg ) nur das aufgefallen ...

[EDIT]Jetzt schreib ich eh schon so wenig und bin doch wieder zu langsam [/EDIT]
龍 Der Unterschied zwischen Theorie und Praxis ist in der Praxis größer als in der Theorie.
  Mit Zitat antworten Zitat
Spurius

Registriert seit: 19. Aug 2003
294 Beiträge
 
Delphi 7 Professional
 
#20

Re: Komisches Datum mit DateTime und INI-Datei

  Alt 23. Mär 2005, 20:56
Hallo,
sry dass ich so lang genervt habe, ihr habt den Fehler gefunden, ich habe Datum in Fangdatum umgeändert, jetzt geht es.
Also vielen, vielen Dank!
Gruß
Spurius
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 3     12 3      


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 15:08 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