GetPrivatProfileSectionName, Returned String parsen



  • Hallo,

    ich habe ein Problem und zwar, habe ich eine ini datei mit 5-6 Sectionen,
    die soll ich jede einzeln "durchlesen", da die aber Variabel sein können, darf ich sie nicht fest im Programm angeben.

    Ich benutze jetzt an einer Stelle das hier:

    GetPrivatProfileSectionName(szTemp,sizeof(szTemp),szFilenName);
    Dann bekomme ich sowas hier raus:
    szTemp = General0BlaBlaBLa0Bliblibli0usbh00
    

    zum Beispiel..wie kann ich jetzt die einzelnen Section trennen?
    Die sind ja mit einer binären 0 getrennt, aber mit meinem Stringparsen klappt des nicht..

    while( pS ) {
    		ptr1 = strchr(pS,'0');
    		if ( ptr1 != 0 ) {
    			ptr1[0] = 0;
    			ptr1++;
    		}else{
    		}
    

    Kann mir da einer helfen?

    MfG



  • '0' ist keine Binäre Null, sondern der Index des ASCII-Zeichens '0'.
    Die binäre Null wäre 0 (ohne '') oder '\0' (mit \).

    Danach kannst du aber mit strchr() nicht suchen.

    Du könntest einfach strlen() verwenden um die nächste Null zu bekommen.
    Dann Zeiger um Ergebnis_von_strlen_plus_1 Bytes weiterschieben, und dort nochmal strlen() machen.
    Sobald strlen() Null meldet bis du bei der Doppelnull angekommen und damit fertig.


Anmelden zum Antworten