AGB  ·  Datenschutz  ·  Impressum  







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

ini..file Programmieren

Ein Thema von t0mmy · begonnen am 2. Nov 2011 · letzter Beitrag vom 3. Nov 2011
Antwort Antwort
t0mmy

Registriert seit: 28. Jul 2010
431 Beiträge
 
Delphi 2010 Architect
 
#1

ini..file Programmieren

  Alt 2. Nov 2011, 17:02
Hallo!

Ich hab folgendes Problem und zwar möcht ich gern ein Ini file schreiben:

Ganze genau so:
Code:
[Friends]
Date=never
Freunde {
  Gruppe1 {
    Person1=192.168.0.101||
    Person2=192.168.0.102||
    Person3=192.168.0.103||
  }
}
Mein Anfang:

Delphi-Quellcode:
  ini := TIniFile.Create(Edit_Pfad.Text);
  try
    ini.WriteString('Friends','Date', 'never');
  finally
    ini.free
  end;
Jetzt hab ich das Problem das ich nicht weiss wie ich das mit den Freunden und den Geschwungenen Klammern mache -.-
Jemand einen Tipp oder Vorschlag?!
  Mit Zitat antworten Zitat
CCRDude

Registriert seit: 9. Jun 2011
678 Beiträge
 
FreePascal / Lazarus
 
#2

AW: ini..file Programmieren

  Alt 2. Nov 2011, 17:07
Ini-Dateien sind für so etwas nicht gemacht... Du wirst eine TStringList füllen müssen. Wenn Du dann noch unbedingt ein TIniFile brauchst, nimm ein TMemIniFile und dessen SetStrings mit vorher gefüllter TStringList. Auch beim Auslesen wirst Du aber wieder auf Probleme stoßen, da hilft ein wenig ReadSectionValues, aber den Inhalt musst Du doch wieder selber parsen.

Mit einer klassischen ini-Datei hat das also wenig zu tun, auch wenn der section header danach aussieht.
  Mit Zitat antworten Zitat
Benutzerbild von Tonic1024
Tonic1024

Registriert seit: 10. Sep 2003
Ort: Cuxhaven
559 Beiträge
 
RAD-Studio 2009 Ent
 
#3

AW: ini..file Programmieren

  Alt 2. Nov 2011, 17:12
Idee 1: Mach Gruppe1 zu einer Section und Gruppe2 zu einer Zweiten.

Idee 2: Lagere Teile deiner Strukur in ein zweites INI-File aus.

Idee 3: schau dir mal XML an.


Gruß,

Toni
Der frühe Vogel fängt den Wurm, richtig.
Aber wird nicht auch der frühe Wurm vom Vogel gefressen?
  Mit Zitat antworten Zitat
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#4

AW: ini..file Programmieren

  Alt 2. Nov 2011, 17:17
Die Daten kann man so strukturiert in eine Ini-Datei schreiben, allerdings sieht der Inhalt etwas anders aus:
Code:
[Friends]
Date=never

[Friends\Freunde]

[Friends\Freunde\Gruppe1]
Person1=192.168.0.101||
Person2=192.168.0.102||
Person3=192.168.0.103||
Das sieht mir irgendwie nach Bei Google suchenLUA aus
Code:
[Friends]
Date=never
Freunde {
  Gruppe1 {
    Person1=192.168.0.101||
    Person2=192.168.0.102||
    Person3=192.168.0.103||
  }
}
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat
schlecki

Registriert seit: 11. Apr 2005
Ort: Darmstadt
148 Beiträge
 
Delphi XE2 Enterprise
 
#5

AW: ini..file Programmieren

  Alt 3. Nov 2011, 01:14
oder json, da sieht das ganze dann so aus:

Code:
{Friends: {
  Date: "never"
  Freunde: [{
    Gruppe1: [
      {name: "Person1", IP: "192.168.0.101"},
      {name: "Person2", IP: "192.168.0.102"},
      {name: "Person3", IP: "192.168.0.103"}
    ]
  }]
}
Freunde ist ein Array, genauso wie Gruppe1. Diese Struktur lässt sich sehr bequem mit SuperObject auslesen und schreiben.

Geändert von schlecki ( 3. Nov 2011 um 01:55 Uhr)
  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 20:39 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