# eine ini Datei genaustens auslesen?!



## JumpLink (7. Juli 2005)

Hi! 
 Ich möchte mit C gerne eine ini Datei auslesen und in eine Variable schreiben, das habe ich auch schon geschafft, aber nur die Komplette Datei, wie kann ich nur einen bestimmten Teil aus der ini in die Variable schreiben? 

 Hier die ini: 

 [bsp] 
 Name=Beispiel 
 Modus=0 
 Edit=0 

 Das Wort „Beispiel“ ist das entscheidende Wort, 
ich möchte allerdings nicht mit Zeilen arbeiten, sondern das Programm soll erkennen wo „Name=“ steht und dann das Wort danach bis zu Absatz in die Variable schreiben. 
 Weis jemand zufällig wie das geht? 
 Bis jetzt habe ich nur Ansi C gelernt, 
 aber ich möchte später auch die anderen Varianten lernen. 
 Antworten wären super toll, schonmal danke!


----------



## Tobias K. (7. Juli 2005)

moin


Ja, speziell für ini Dateien gibt es da was. Guck mal den Thread an: http://www.tutorials.de/tutorials154114.html&highlight=ini


mfg
umbrasaxum


----------



## JumpLink (7. Juli 2005)

Danke, ich habe allerdings noch eine Frage zu diesem Thema, sie steht hier:
http://www.tutorials.de/forum/showthread.php?p=1099433#post1099433


----------



## Martin Schroeder (8. Juli 2005)

Hallo!
Ich habe auch mal so 'n Modul geschrieben, dass inis ausliesst.
http://de.geocities.com/martinschroederglst/cpp.html
Das heisst bei mir allerdings Settings und kann nichts mit eckigen KLammern [] anfangen.


----------



## deepthroat (8. Juli 2005)

Es gibt auch einige ini Parser im Netz (gooooogle), z.B. http://ndevilla.free.fr/iniparser/html/index.html oder http://www.muquit.com/muquit/software/libmcfg/libmcfg.html.


----------



## Bruzzler69 (23. Juli 2007)

Hallo....also das mit ini ein und auslesen funktioniert bei mir alles ohne Probleme...nun zu meiner Frage, ich würde gerne mehrzeilige Values auslesen z.B.:

[Warnmeldung]
Meldung=Sehr geehrter Anwender,bitte vergewissern Sie sich, dass der korrekte Pfad
gewählt wird.
Das Wiederherstellen von alten Ständen löscht den aktuellen Stand unwiderbringlich!


Diesen Text liest mir mein Programm aus aber nur die erste Zeile halt, das was in der anderen Zeile steht nimmer.
Wenn ich alles in eine Zeile schreibe dann geht es, wird dann aber recht unübersichtlich wie ich finde.

Wenn das nicht möglich ist, dann kann mir vllt jemand helfen das prblem anderweitig zu lösen, ich will diesen Text in einer Messagebox ausgeben.

also
	
	
	



```
GetPrivateProfileString("Warnmeldung","Meldung",DEFAULTVALUE_MATCHES ,Ausgabe,2000,inipath );

....

MessageBox(NULL, Ausgabe , "Warnung", MB_ICONINFORMATION | MB_OKCANCEL | MB_DEFBUTTON1);
```


Also wenn ich den Text in einer Zeile schreibe in der Ini...dann kommt der Text auch in einer Zeile in der Messagebox und der Zeilen umbruch wird wohl automatisch vom system gemacht, was ziemlich dämlich aussieht.
Also gibt es eine Möglichkeit, denn Text aus der Ini zweizeilig auszulesen samt Zeilenumbruch, so dass er auch in der Messagebox zweizeilig erscheint....?


----------



## deepthroat (23. Juli 2007)

Hi.

Nein, das funktioniert nicht. Das INI Format ist auch dafür nicht gedacht - du solltest dafür lieber Resourcen-Dateien verwenden.

Gruß


----------



## Bruzzler69 (23. Juli 2007)

mh ok danke mal für die schnelle Antwort, dann schau ich mal was das mit den ressourcen dateien auf sich hat... ;-)


----------

