www.mikrocontroller.net

Forum: PC-Programmierung INI datei


Autor: Olliver (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi.
ich habe eine ini datei die folgedermassen aussieht.
wie werde ich das am besten aus ?

[Devices]
Device1=SIEMENSS65
Device2=SIEMENSS55
Device3=SIEMENSC55
Device4=SIEMENSYYY
Device5=SIEMENSXXX
...

sollte ich eine Liste von allen einträgen von Devices nehmen und nur
die einträge mit Device + Zahl rausfiltern oder sollte ich besser alle
zahlen durchmachen, bin keine werte mehr kommen ?

Wie wird das normal gemacht ?

MfG

Autor: Marc Braun (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Da Windows bei jedem Zugriff über die Funktionen GetPrivateProfile...
die INI-Datei parst, empfehle ich Dir die erste Methode.

Hierfür gibt es schöne Funktionen im Windows API:

GetPrivateProfileSection( ... )

Autor: JojoS (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
wenn du die Ini-Datei selbst im Griff hast: ich würde als Alternative
die Konfigdaten in eine xml Datei schreiben. Der wesentliche Vorteil
ist das du die strukturierter und hierarchisch ablegen kannst. Es gibt
fertige API's um xml zu Lesen und zu Schreiben. Auch Funktionen zum
Auflisten und Suchen sind da schon drin.
Wenn du unter Windows arbeitest: es ein XML-Notepad, damit kann man die
Struktur seiner Daten sehr einfach modellieren, findest du z.B. hier:
http://www.snapfiles.com/get/xmlnotepad.html
Um mit der API klarzukommen einfach ein XMLDoc Objekt erzeugen, ein xml
file laden und im Debugger die Nodes aufklappen, dann kommt recht
schnell damit klar. Schnickschnack wie Styles und Schemas brauchst du
dafür nicht.

Autor: Rufus T. Firefly (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Sind die ersten beiden Parameter von GetPrivateProfileString NULL, so
liefert die Funktion eine Liste nullterminierter Strings, die die
[Abschnitte] der Ini-Datei aufzählen.

Ist nur der zweite Parameter NULL, so wird eine Liste nullterminierter
Strings geliefert, die die Namen aller Parameter in einem Abschnitt
enthält.

Im Beispiel von Olliver wäre der erste Parameter also "Devices", und
die Liste bestünde aus "Device1\x00Device2\x00Device3\x00 ...
\x00\x00".

So muss man nur noch die Liste iterieren und fertig.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.