Bonjour,
désolé pour le sujet limite, mais c'est parce que je craque.
Je veux extraire une chaine d'un fichier csv. Ma ligne line est correct en entrée. Ma fonction marche 1 seule fois. A la 2ieme ligne, ça plante et je ne trouve pas pourquoi.
Voici le code :
Merci de votre aide.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30 void getAndSetDataFromCSVLine(string line) { char *ch; char separator = ','; ch = new char [line.size()+1]; strcpy(ch,line.c_str()); _date.clear(); _date = strtok(ch,&separator); _time.clear(); _time = strtok(NULL,&separator); Status1.clear(); Status1 = strtok(NULL,&separator); TA_2m_AVG.clear(); TA_2m_AVG = strtok(NULL,&separator); Status2.clear(); Status2 = strtok(NULL,&separator); RH_2m_AVG.clear(); RH_2m_AVG = strtok(NULL,&separator); Status3.clear(); Status3 = strtok(NULL,&separator); DP_2m.clear(); DP_2m = strtok(NULL,&separator); Status4.clear(); Status4 = strtok(NULL,&separator); PA_2m_AVG.clear(); PA_2m_AVG = strtok(NULL,&separator); Status5.clear(); Status5 = strtok(NULL,&separator); WindSpeed_AVG.clear(); WindSpeed_AVG = strtok(NULL,&separator); Status6.clear(); Status6 = strtok(NULL,&separator); WindSpeed_MAX.clear(); WindSpeed_MAX = strtok(NULL,&separator); Status7.clear(); Status7 = strtok(NULL,&separator); WindSpeed_MIN.clear(); WindSpeed_MIN = strtok(NULL,&separator); Status8.clear(); Status8 = strtok(NULL,&separator); WindDir_AVG.clear(); WindDir_AVG = strtok(NULL,&separator); Status9.clear(); Status9 = strtok(NULL,&separator); WindDir_MAX.clear(); WindDir_MAX = strtok(NULL,&separator); Status10.clear(); Status10 = strtok(NULL,&separator); WindDir_MIN.clear(); WindDir_MIN = strtok(NULL,&separator); }
Partager