Kezdőoldal » Számítástechnika » Programozás » Csv fájlt hogyan kell beolvasn...

Csv fájlt hogyan kell beolvasni, /részekre szabdalva a sorokat/?

Figyelt kérdés

akcia;action;0;0

autobus;bus;0;0

budova;building;0;0

celkom;quite;0;0

centrum;centre;0;0

Van egy csv fájl amiben igy nez ki az adatok:


dotyk;touch;0;0

forma;form;0;0

hlava;head;0;0

hlboko;deep;0;0

hmla;fog;0;0

chlieb;bread;0;0

jedlo;food;0;0


egy szotarhoz kell ami kiirja az elso szot majd nekunk a masodik szavat kell megadnunk. A 0 hoz pedig a jo es rossz valaszokat kell majd elmenteni.


Ha beolvasom:


FILE *doo = fopen("slovnik.csv", "r");


ekkor:

hlboko;deep;0;0


igy teszi ki nem pedig csak a hlboko szavat.Hogyan kell megcsinalni hogy csak a hlbko -t irja ki?


2011. dec. 21. 16:45
 1/6 anonim ***** válasza:
Felkell szabdalnod a stringet, a ';' mentén. Ha kész megoldást akarsz semmi gond, adok számlaszámot!
2011. dec. 21. 17:54
Hasznos számodra ez a válasz?
 2/6 anonim ***** válasza:

m1, karácsony van nálad is, ez egy jó kiindulási alap:

split(char *original, char * split1, char * split2)

{

int i = 0;

int j = 0;

int flag = 0;


while (original[i] != '\0')

{

if (flag == 0)

{

if (original[i] == '-')

{

flag = 1;

split1[i] = '\0';

}

else

{

split1[i] = original[i];

}

}

else

{

split[j++] = original[i];

}

i++;

}

2011. dec. 21. 17:55
Hasznos számodra ez a válasz?
 3/6 A kérdező kommentje:

azt olvastam valhol hogy C-ben nincsen split hanem

strtok van helyette.


akcia;action;0;0

autobus;bus;0;0

budova;building;0;0

celkom;quite;0;0

centrum;centre;0;0


ezt csv fajlban hogyan kell szetdarabolni?


Beolvasas és szetdarabolas majd kiiratas..hogyan kéne?



#include <stdio.h>

#include <stdlib.h>

#include <string.h>


int main() {


FILE *doo = fopen("slovnik.csv", "r");



fclose(doo);


return 0;

}



Strtok()


Example:


char str[] = "now # is the time for all # good men to come to the # aid of their country";

char delims[] = "#";

char *result = NULL;

result = strtok( str, delims );

while( result != NULL ) {

printf( "result is \"%s\"\n", result );

result = strtok( NULL, delims );

}


OUTPUT:

result is "now "

result is " is the time for all "

result is " good men to come to the "

result is " aid of their country"

2011. dec. 21. 20:42
 4/6 anonim ***** válasza:

delimset errol: # csereld le erre: ;

Az str meg a te beolvasott sorod. Mellesleg ha erre nemjosz ra hagyd a pcsaba a programozast

2011. dec. 21. 21:01
Hasznos számodra ez a válasz?
 5/6 A kérdező kommentje:
jo az nekem is feltunt.
2011. dec. 21. 21:05
 6/6 anonim ***** válasza:
Akkor mit nem értesz?
2011. dec. 22. 08:52
Hasznos számodra ez a válasz?

Kapcsolódó kérdések:




Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!