Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » Borland C++ Builder » Eigene Dateien für Daten

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: [ 1 ] > 2 <
010
17.06.2006, 23:54 Uhr
Uwe
C/C++ Master
(Administrator)


Hallo,

Zitat von dmueller:

...
Den Aufbau einer Ini Datei sieht doch so aus?

Code:
[Section]
[Ident] = [Value]





Weiter Oben hab ich das schon geschrieben:
Inifile:

[MyValues]
A=0
B=0
C=0

Zitat von dmueller:

Beim Speichern in die Datei da sagt der mir "In kann nicht geschrieben werden", und wenn


Öffne mal Dein "test.ami" mit einem Texteditor und füge folgendes ein:

Code:
[MyValues]
ID=0
Typ=0


Speichern und schließen.
Welchen Typ hben Deine Felder "ID" und "Typ"?
Ist "ID" z.B Interger so kanst Du die Methode ReadInteger(...) bzw WriteInteger nutzen.
Nun kenne ich die Situation in Deinem Projekt nicht. Wo werden die Daten angezeigt?
Ich würde den aktuellen Inhalt der Steuerelemente wegschreiben und dann wieder den Steuerelementen zuordnen. So wie Du das im Moment vorhast, überschreibst Du das DataSet.

Zitat:

ich das Feld das ich übetragen will leer lasse sagt der mir "Variante des Typs (Null) konnte nicht in Typ (String) umgewandelt werden."


Eben, vorher Abfragen ob DBNull sonst einen Defaultwert zuordnen

Zitat:

Zum Speichern:

C++:
void __fastcall TForm1::Button5Click(TObject *Sender)
{
    if(strFile == "") {
       strFile == "test.ami"; //******* Das ist ein Vergleich und keine Zuweisung !!!
                                   // Und an welche Stelle schreibt er das?
                                   // Besser wie oben den Anwendungspath ermitteln und
                                   // die Datei dorthin schreiben
    }
    TIniFile* Ini = new TIniFile(strFile);
    Ini->WriteString("MyValues","ID",Table1->FieldByName("ID")->Value);
    Ini->WriteString("MyValues","ID",Table1->FieldByName("Typ")->Value);

    delete(Ini);
}


und zum Öffnen:

C++:
void __fastcall TForm1::Button6Click(TObject *Sender)
{
    if(ParamCount())
    {
      strFile = "test.ami";
      TIniFile* Ini = new TIniFile(strFile);
      Table1->FieldByName("ID")->Value = Ini->ReadString("MyValues","ID","");
      // Wenn Integer dann z.B.
      // Table1->FieldByName("ID")->Value = Ini->ReadInteger("MyValues","ID",0);
      // geht was schief wird als default 0 zugeordnet.
      // Wenn die Connection auf true steht, kann(Betonung liegt auf kann) hier Dein DB Wert
      // übeschrieben werden
      Table1->FieldByName("Typ")->Value = Ini->ReadString("MyValues","Typ","");
      delete(Ini);
    }
}




Zitat:

Hab ich jetzt großen Misst gemacht??

Nö...
Zwischenfrage:
Schon mal nachgedacht die Werte in die DB zuschreiben?
Z.B. UserID #FK
Last_ID
LAST_Type
--
"Es ist schwierig, ein Programm wirklich idiotensicher zu machen, weil Idioten so genial sind."

Bis dann...
Uwe

Dieser Post wurde am 18.06.2006 um 00:01 Uhr von Uwe editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
011
18.06.2006, 15:10 Uhr
dmueller



Hi

hab das nun mal ausprobiert, die ID ist ein Integer,hab ich auf Integer geändert. Dann hab ich die test.ami nun zuweisen lassen, kam mir schon komisch vor warum das nur ein Vergleich war.

Nun kommt beim betätigen der Buttons kein Fehler mehr (außer wenn das Feld ID Null ist), aber er schreibt nichts in die Datei.

Ja hab vor alles in die Datenbank zu schreiben. Die Datei soll eigentlich nur die ID des Datensatzes speichern. und beim öffnen der Datei diesen zurückgeben und anzeigen soll.

Also man speichert eine eingabe ab, dabei wird nur die ID von dem Datensatz in der Tabelle gespeichert, wenn man sich später diese Eingaben nochmal ansehen möchte kann man sich die Datei öffnen und sieht sie wieder. könnte auch ein Angabe feld machen, damit man sie dadurch aufrufen kann.

Dieser Post wurde am 18.06.2006 um 15:10 Uhr von dmueller editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
012
18.06.2006, 15:59 Uhr
Uwe
C/C++ Master
(Administrator)


Hallo,
ohne Quellcode ist da nix zu löten. Zip mal dein Projekt und schick's mir zu. Schaue es mir mal in der fussballfreien Zeit an .
--
"Es ist schwierig, ein Programm wirklich idiotensicher zu machen, weil Idioten so genial sind."

Bis dann...
Uwe

Dieser Post wurde am 18.06.2006 um 15:59 Uhr von Uwe editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
013
18.06.2006, 16:06 Uhr
dmueller



Hi, das wäre super

dankeschön. Hab ne PM geschickt mit dem Programm.

MfG
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
014
18.06.2006, 16:10 Uhr
Uwe
C/C++ Master
(Administrator)


Hi,
PM ? per mail - Adresse im Profil.
--
"Es ist schwierig, ein Programm wirklich idiotensicher zu machen, weil Idioten so genial sind."

Bis dann...
Uwe
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
015
18.06.2006, 16:15 Uhr
dmueller



ahso, oh wusste ich nit, hab nen link in der pm geschickt ... kanns auch nochmal andie mail schicken.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: [ 1 ] > 2 <     [ Borland C++ Builder ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: