Форум программистов, компьютерный форум CyberForum.ru

Создание файла конфигураций. Работа с файлом. [C++] - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 10, средняя оценка - 4.80
res
56 / 9 / 1
Регистрация: 05.04.2010
Сообщений: 143
04.10.2011, 00:08     Создание файла конфигураций. Работа с файлом. [C++] #1
Всем привет.
Хочу создать функцию, который будет возвращать нужную строку из файла.


Файл test.conf
Код
ZONE = 1
IP = 127.0.0.1
PORT = 8085

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
string GetIP(char* filename)
{
    char ch;
    string result;
 
    ifstream fin(filename);
 
    if(!fin.is_open())
        result = "Can't open";
 
    while(fin.get(ch))
        result = result+ch;
 
    fin.close();
    return result;
}
 
void main()
{
        cout << GetIP("test.conf") ;
        cin.get;
}
Помогите мне создать условию в функций "GetIP", которая будет возвращать только "127.0.0.1"? (айпи адрес)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
04.10.2011, 00:08     Создание файла конфигураций. Работа с файлом. [C++]
Посмотрите здесь:

C++ Работа с файлом
Из файла содержащего 65536 целых чисел записать в другой файл значения больше 150 C++
C++ Работа с файлом
C++ Работа с файлом в С++
Работа с файлом C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
xAtom
 Аватар для xAtom
910 / 735 / 60
Регистрация: 09.12.2010
Сообщений: 1,346
Записей в блоге: 1
04.10.2011, 00:37     Создание файла конфигураций. Работа с файлом. [C++] #2
res, зачем одну строку забил в парный массив key = value и дальше как по "маслу"
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 <stdlib.h>
 
struct config {
    char key[32];
    char value[128];
};
 
int main(){
   struct config arr[3];  // кол-во строк-параметров в INI-файле
   int cnt  = 0;
   FILE* fp = fopen("config.ini", "r");
   if(! fp)
      exit(1);
   for(cnt = 0; fscanf(fp, "%[^=]=%[^\n]%*c", arr[cnt].key, arr[cnt].value) == 2 && cnt < sizeof(arr)/sizeof(arr[0]); cnt++);
   fclose(fp);
 
   for(int i = 0; i < sizeof(arr)/sizeof(arr[0]); i++)  // выводим пары
       printf("%s = %s\n", arr[i].key, arr[i].value);
 
   getchar();
   return 0;
}
res
56 / 9 / 1
Регистрация: 05.04.2010
Сообщений: 143
04.10.2011, 00:55  [ТС]     Создание файла конфигураций. Работа с файлом. [C++] #3
а можешь показать в виде функций и C++?
accept
4838 / 3237 / 165
Регистрация: 10.12.2008
Сообщений: 10,682
04.10.2011, 08:08     Создание файла конфигураций. Работа с файлом. [C++] #4
ищет строку в файле по первому полю
Код
[guest@localhost tests]$ .iso++ main.cpp -o t
[guest@localhost tests]$ ./t
127.0.0.1
[guest@localhost tests]$
Вложения
Тип файла: zip get_ip.zip (829 байт, 38 просмотров)
res
56 / 9 / 1
Регистрация: 05.04.2010
Сообщений: 143
04.10.2011, 13:50  [ТС]     Создание файла конфигураций. Работа с файлом. [C++] #5
accept, при многом благодарен.
Yandex
Объявления
04.10.2011, 13:50     Создание файла конфигураций. Работа с файлом. [C++]
Ответ Создать тему
Опции темы

Текущее время: 05:34. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru