I have a file with 190 lines, that goes something like this:
[code]Antigua,English,Local dialects
Bahamas,English,Creole
Barbados,English
Belize,English,Spanish,Mayan,Carib
Canada,English,French
Costa Rica,Spanish,English
Cuba,Spanish[/code]
First field is the country, following fields are the different languages spoken in that country.
Since some countries have more languages than others, I am stuck trying to read the file using fgets() and sscanf().
I'm doing this:
[code]
while(i < SIZE && fgets(buffer, 255, fp))
{
sscanf(buffer, "%[^,]%*c%[^
]", holdName, buffer);//read the country first, and keep the rest for the languages
.........
/* Here is where I'm lost, I want to read a language, keep the rest of the buffer to repeat until
the buffer is empty. But obviously I'm doing it wrong */
while(sscanf(buffer, "%[^,]%*c%[^
]", holdLang, buffer) != '
')
{
............
}
i++;
}
[/code]
Any help please?
I have this big program to do, and can't do anything else until I am able to read the whole file.
Thanks
Comments
and use the function,
[b]fread(buf,190,1,fp)[/b]
here in function "fread()"
[b]buf[/b] -is where the contents of the file will be stored.
[b]190[/b] -number of characters to read(190 in your case).
[b]1 [/b] -number of items to read.
[b]fp[/b] -file pointer pointing towards the file to be operated.
Read here File Input/Output in C programming