[ FoReSTaReaN @ 26.05.2004. 20:43 ] @
Imam tabelu snimljenu u Excelu kao text file TAB delimited. U tabeli neke vrednosti nedostaju, znaci dva TAB-a zaredom na tom mestu. Da li postoji jednostavan i elegantan nacin da se ovo ucita preko nekog standardnog C-ovskog formata ili moram rucno?
[ markom @ 26.05.2004. 21:05 ] @
http://www.gnu.org/software/li...inding-Tokens-in-a-String.html

Marko.
[ FoReSTaReaN @ 27.05.2004. 07:53 ] @
Hvala Marko, ali ovo ipak nije ono sto mi treba. Radi se o tabeli koja sadrzi i neka prazna mesta, znaci dva separatora (tab-a) zaredom. Meni bi trebalo da se i to prazno mesto tretira kao token. Izgleda da cu morati da uradim rucno, sta da se radi... Hvala u svakom slucaju
[ NetworkAdmin @ 27.05.2004. 21:51 ] @
zar ne moze prosto explode da se uradi a separator stavis da je \t
[ markom @ 27.05.2004. 22:16 ] @
Sad baš videh da strtok ne hendluje prazne stringove. Takođe, videh funkciju strsep. Da ti ne radi možda ona posao?

Marko.

P.S. explode ?
[ markom @ 27.05.2004. 22:41 ] @
Code:

#include <stdio.h>
#include <stdlib.h>
#include <string.h>

int main (void)
{
        FILE *f;
        char *s, *t;
        int i, j;

        f = fopen("tabela", "r");

        i = 1;
        while (!feof(f)) {
                s = (char *) malloc(1025);
                fgets(s, 1024, f);
                s[strlen(s) - 1] = 0;
                if (!strlen(s)) {
                        break;
                }
                j = 1;
                while (t = strsep(&s, "\t")){
                        printf("Red %d; Token %d: '%s'\n", i, j++, t);
                }
                printf("\n");
                i++;
        }
        fclose(f);
}


Fajl "tabela":
Code:

polje1  polje2  polje3
polje1          polje3


Output:
Code:

Red 1; Token 1: 'polje1'
Red 1; Token 2: 'polje2'
Red 1; Token 3: 'polje3'

Red 2; Token 1: 'polje1'
Red 2; Token 2: ''
Red 2; Token 3: 'polje3'


Marko.
[ FoReSTaReaN @ 28.05.2004. 08:44 ] @
Marko, hvala na pomoci, tvoj code radi posao kako treba, ali ipak sam na kraju odlucio da napravim VBA makro pod Excelom koji mi racuna ono sto treba direktno iz selektovanog range-a. Komande strtok i strsep nisam do sad koristio, ali cu ih ubuduce sigurno koristiti. Hvala jos jednom!