| Autor |
Beitrag |
SteheAufDerLeitung
      
Beiträge: 104
|
Verfasst: Fr 17.08.07 07:32
Hallo!
Ich habe ein IniFile mit rund 20 Sections. Die Sections, deren Name mit "TabSheet" beginnen, möchte ich in eine neue Section schreiben. Mein Hintergrund: In einer Schleife will ich genau diese Sections durchsuchen.
Kann ich denn diese Sections in eine neue Section schreiben? Oder gibt es vielleicht einen besseren Weg gezielt Sections zu durchsuchen?
Danke schon mal...
Sebastian
|
|
Narses
      

Beiträge: 10185
Erhaltene Danke: 1261
W11x64
TP3 .. D7pro .. D10.2CE
|
Verfasst: Fr 17.08.07 09:14
Moin!
Deine Beschreibung hört sich so an, als ob du im Aufbau der INI-Datei einen Konzept-Fehler drin hast...  Das führt dann meistens zu den interessantesten Effekten...  Wenn Nutzdaten in den Section-Namen enthalten sind, ist das IMHO ein Fehler.
Beispiel, " ungeschickt":
Quelltext 1: 2: 3: 4: 5: 6: 7: 8: 9:
| [Person1] Name=Tilo Testmann Age=18 [Person2] Name=Rainer Uhser Age=19 [Person3] Name=Kai Neahnung Age=20 |
Besser so:
Quelltext 1: 2: 3: 4: 5: 6: 7: 8:
| [Persons] Count=3 Name1=Tilo Testmann Age1=18 Name2=Rainer Uhser Age2=19 Name3=Kai Neahnung Age3=20 |
cu
Narses
_________________ There are 10 types of people - those who understand binary and those who don´t.
|
|
arj
      
Beiträge: 378
Win XP/Vista, Debian, (K)Ubuntu
Delphi 5 Prof, Delphi 7 Prof, C# (#Develop, VS 2005), Java (Eclipse), C++, QT, PHP, Python
|
Verfasst: Fr 17.08.07 09:53
@narses: Das er nen Fehler hat, hat er wohl gemerkt, sonst hätte er nicht gefragt wie man es korrigiert!
@SteheAufDerLeitung: Post doch mal einen Teil der INI wie sie momentan ist, und wie sie sein sollte.
Dann kann man dir helfen 
|
|
Narses
      

Beiträge: 10185
Erhaltene Danke: 1261
W11x64
TP3 .. D7pro .. D10.2CE
|
Verfasst: Fr 17.08.07 09:56
Moin!
arj hat folgendes geschrieben: | @narses: Das er nen Fehler hat, hat er wohl gemerkt, sonst hätte er nicht gefragt wie man es korrigiert!  |
Den konnteste dir aber nicht verkneifen, was?  Dumm nur, dass mein Posting ggü deinem schon Hilfe enthält...
cu
Narses du bist hoffentlich nicht zart besaitet und verstehst das jetzt nicht falsch
//EDIT:
arj hat folgendes geschrieben: | | Eine Lösung hast du ihm noch nicht gegeben! Du hast nur das Problem das er hat formuliert! |
Das ist idR doch schon die halbe Lösung... 
_________________ There are 10 types of people - those who understand binary and those who don´t.
Zuletzt bearbeitet von Narses am Fr 17.08.07 10:09, insgesamt 1-mal bearbeitet
|
|
arj
      
Beiträge: 378
Win XP/Vista, Debian, (K)Ubuntu
Delphi 5 Prof, Delphi 7 Prof, C# (#Develop, VS 2005), Java (Eclipse), C++, QT, PHP, Python
|
Verfasst: Fr 17.08.07 10:02
>>> OFF TOPIC <<< @narses: Ja, da hast allerdings recht, deines enthält schon Hilfe allerdings weiß ich noch nicht, ob er genau das gemeint hat  >>> OFF TOPIC <<< @Stehaufderleitung: Kannst dich ja mal melden ob narses mit geschultem blick *g* dein Problem erkannt hat ;) Wobei: Eine Lösung hast du ihm noch nicht gegeben! Du hast nur das Problem das er hat formuliert!
|
|
SteheAufDerLeitung 
      
Beiträge: 104
|
Verfasst: Fr 17.08.07 12:40
Na dann list ich mal kurz was: Quelltext 1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25:
| [TabSheetReglerKont] NoOfObjects = 5 NoOfParameter = 3 item0 = bsp0 item0.1 = bsp0.1 item0.2 = bsp0.2 item0.3 = bsp0.3 item1 = bsp1 item1.1... ... ...
[TabSheetReglerZweipunkt] NoOfObjects = 17 NoOfParameter = 5 item0 = bsp0 item0.1 = bsp0.1 item0.2 = bsp0.2 item0.3 = bsp0.3 item0.4 = bsp... item0.5 = bsp 0.5 item1 = bsp1 item1.1... ... ... | So siehts für knapp zwanzig Sections aus. Dabei beginnen aber nicht alle SectionNamen mit TabSheet. Will mir aber irgendwo nur die listen, die auch mit TabSheet beginnen, damit ich sie nach Items und Values durchsuchen kann.. hilft das? Moderiert von Tino: Code-Tags hinzugefügt.
|
|
Calculon
      
Beiträge: 676
Win XP Professional
Delphi 7 PE, Delphi 3 PRO
|
Verfasst: Fr 17.08.07 18:07
| SteheAufDerLeitung hat folgendes geschrieben: | | Will mir aber irgendwo nur die listen, die auch mit TabSheet beginnen, damit ich sie nach Items und Values durchsuchen kann.. |
Du könntest doch die ini-Textdatei in einer Schleife mit beispielsweise while not eof() durchlaufen und für jede Zeile prüfen, ob 'TabSheet' vorkommt. Wenn ja, in einer Stringlist zwischenspeichern und diese dann am Ende nach deinen Wünschen an die Ini ankleben.
Hier erfährst du, wie du prüfen kannst, ob ein String in einem anderen String vorkommt. Wie du siehst, hab' ich immer die besten Einfälle...
Gruß
Calculon
--
|
|
GTA-Place
      

Beiträge: 5248
Erhaltene Danke: 2
WIN XP, IE 7, FF 2.0
Delphi 7, Lazarus
|
Verfasst: So 19.08.07 18:10
Mit der Funktion ReadSections von TIniFile kannst du alle Sections einer TStringList übergeben. Das könnte auch helfen.
_________________ "Wer Ego-Shooter Killerspiele nennt, muss konsequenterweise jeden Horrorstreifen als Killerfilm bezeichnen." (Zeit.de)
|
|
SteheAufDerLeitung 
      
Beiträge: 104
|
Verfasst: Di 21.08.07 10:34
Genau so bin ich es angegangen! Am Anfang wollte ich keine StringList verwenden, sondern nur das IniFile. Der Weg ist aber nicht schlecht!
Besten Dank - ReadSections läuft 
|
|