GetPrivateProfileString für LINUX

hallo zusammen,

gibt es eine funktion, wie die GetPrivateProfileInt, die auch unter LINUX funktioniert??

ich brauche ne methode/funktion mit der ich bestimmte werte/wörter aus einer ini-datei auslesen kann.

Vielen Dank
Gruß
Micha

Nein. Aber du kannst dir die ganz leicht selber schreiben, indem du eine Klasse anlegst und mit einem Steam (std::ifstream) die datei Ausliest und parst. Falls es doch eine ähnliche Funktion gibt, Glück, denn mir ist sie noch nie begegnet :smile:

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Hi,

hat sowas evtl. schon jemand(Du) bei sich rumliegen??

Gruß
Micha

Nein. Aber du kannst dir die ganz leicht selber schreiben,
indem du eine Klasse anlegst und mit einem Steam
(std::ifstream) die datei Ausliest und parst. Falls es doch
eine ähnliche Funktion gibt, Glück, denn mir ist sie noch nie
begegnet :smile:

Hi,

hat sowas evtl. schon jemand(Du) bei sich rumliegen??

Ja ,hab ich vor zwei oder drei jahren
mal geschrieben. Sehr kurz, kann lesen
und schreiben und muesste auch heute noch
gehen :wink:

Sowas hier:

[Sektion]
Nummer=322
Name=Karl

mit:

double d;
inifile.read( „Sektion“, „Nummer“, d );

string s;
inifile.read( „Sektion“, „Name“, s );

usw.

Ist es das?

CMБ

Ich denke das ist genau das, was er haben will, du müsstest nur den Source dazu veröffentlichen bzw. ihm per Mail schicken (ich weiß ja nicht ob du das schon gemacht hast)

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Das schaut schon mal gaz gut aus!! Kannst Du mir den Quellcode posten bzw. schicken?

Gruß
Micha

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Hi,

Das schaut schon mal gaz gut aus!! Kannst Du mir den Quellcode
posten bzw. schicken?

OK, hab ich an [email protected] gemailt!

Anwendung (eben getestet, gcc 3.3.3):

$> g++ -o profile myprog.cxx profile.cxx
$>

Alle Funktionen liegen in profile.cxx, die Klassendefinition
in profile.h, dieses ist ins eigene Programm zu includen:

myprog.cxx

 #include "profile.h"
 #include 

 int main()
{
 ifstream iFile ("test.ini");

 PROFILE inifile(iFile); // das input-file steht ab hier zur verfuegung
 cout 

Grüße

CMБ

Hi,
ich finde das Thema sehr interessant und werde sowas auch brauchen.
kannst du mir bitte auch den quellcode per email schicken ?
danke

youssef

VIELEN DANK!! :smile:

Hi,

ich habe noch eine kurze Frage zu deinem CODE. Wird in deinem CODE irgendwo ermittelt wieviele Einträge eine [SEKTION] hat?? Hab es mir angeschaut aber auf den ersten und zweiten Blick nichts in der Art entdeckt.

MFG
Micha

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Hi,

ich habe noch eine kurze Frage zu deinem CODE. Wird in deinem
CODE irgendwo ermittelt wieviele Einträge eine [SEKTION] hat??
Hab es mir angeschaut aber auf den ersten und zweiten Blick
nichts in der Art entdeckt.

Ist nicht drin. Ich habs gerade hinzugefügt. Wie gesagt, es
war und ist ein Hack, funktioniert aber, wenn man gesunden
Input hat.

Füge bitte in die Datei profile.cxx (am Ende) an:

 bool PROFILE::mod\_entry (const string& sec, const string& key, string val)
{
 ...
}

 **int PROFILE::count\_section(const string& sec) const  
{   
 int count=0;  
 iniMAP::const\_iterator p=table.begin();  
 for(; p!=table.end(); ++p) {   
 if ( sec == p-\>first.first ) { // section header ok ?  
 ++count;  
 }  
 }  
 return count;  
}**  

und in profile.h am Ende der Klasse:

 ...
 ostream& write(ostream& channel) const; 
**int count\_section(const string& sec) const;**
 };

Jetzt kannst Du folgendes aufrufen:

 ...
 int n;
 n = inifile.count\_section("DATA");
 ...

Falls es nicht geht und Du Lösungen
findest, freue ich mich über einen
reply.

Grüße

CMБ

Hallo Semjon,

mein Prog ist soweit fertig und unter Windows funkt es. Aber wenn ich es versuche unter LINUX zu kopilieren :frowning:( klappt es nicht so ganz ich bekomme lauter Fehlermeldungen.

Könnte ich Dir evtl. den Code(Prog) schicken, damit du drüber schaust???

Gruß
Micha

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Hallo Semjon,

mein Prog ist soweit fertig und unter Windows funkt es. Aber
wenn ich es versuche unter LINUX zu kopilieren :frowning:( klappt es
nicht so ganz ich bekomme lauter Fehlermeldungen.

Könnte ich Dir evtl. den Code(Prog) schicken, damit du drüber
schaust???

Womit und wie kompilierst Du unter Linux?

Schick mir mal bitte ein .tar oder .zip des
Verzeichnissen für Linux und eine Gebrauchs-
anweisung oder Readme fürs Kompilieren.

Ich versuche dann mal mein Glück :wink:

Grüße

CMБ