Ik was een paar dagen geleden hier met het probleem om vanuit het ip-adres de provider te halen. Daar heb ik toen perfect antwoord gekregen en ben toen gaan snuffelen op ripe.net. Daar heb ik ripe.db.inetnum gedownload en ben deze gaan parsen... Dat deed ik met PHP op mn local "servertje". Dat duurt weet ik niet hoeveel uren en is absoluut geen optie. Ik weet niet of het ligt aan mijn manier van code of aan de grootte van het bestand... Nu heb ik een paar jaar geleden iets met C gedaan en wist dat dat sneller moet zijn. Dat is het idd! Alleen is dat echt helemaal weggezakt en heb ik daar nu twee vraagjes over.
1. Met onderstaande code krijg ik een foutmelding, terwijl mij de code correct lijkt, wat hij dus blijkbaar niet is
"thread stopped" en dat ligt aan regel 14...
2. Binnen PHP kan ik erg prettig met regular expressions werken. Maar daar kan ik geen duidelijke informatie en voorbeelden over vinden. Heeft iemand toevallig een leuk linkje???
1. Met onderstaande code krijg ik een foutmelding, terwijl mij de code correct lijkt, wat hij dus blijkbaar niet is
2. Binnen PHP kan ik erg prettig met regular expressions werken. Maar daar kan ik geen duidelijke informatie en voorbeelden over vinden. Heeft iemand toevallig een leuk linkje???
C:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
| # include <stdio.h> # include <string.h> main() { FILE *pnf; int val; char string[500]; char *inetnum = "inetnum", *length; pnf = fopen("D:\\ripe\\ripe.db.inetnum", "r"); rewind(pnf); while (fgets(string,900000,pnf) != NULL){ length = strstr (string, inetnum); val = strncmp(length, inetnum, 6); if (val == 0){ printf ("%d\t%s\t%s", a, length, string); } else { } } fclose(pnf); return 0; } |