Для этого вы можете использовать функции strtok
и strtol
(если вы читаете из строк):
int port = 0;
char *tmp_str;
strtok(port_str, ": ");
tmp_str = strtok(NULL, ": ");
port = strtol(tmp_str, NULL, 10);
прочее.
В противном случае используйте fscanf
форматированный ввод:
fscanf(file_pointer, "%*s%d", &port);
fscanf(file_pointer, "%*s%s", ip_str);
fscanf(file_pointer, "%*s%s", dir_str);
*
в спецификаторах формата говорят fscanf
игнорировать прочитанную строку ("Порт", "IP", "Каталог" и т. Д.), А затем :
(двоеточие + пробел) сообщает fscanf
игнорировать двоеточие и любые пробелы после него. Затем fscanf
считывает целое число или строку (%d
или %s
соответственно) в параметр, переданный в fscanf
.