Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 9, средняя оценка - 4.56
AlexLan73
2 / 2 / 1
Регистрация: 06.10.2013
Сообщений: 151
#1

INI - Загрузка и сохранение настроек - C++

27.06.2014, 15:17. Просмотров 2291. Ответов 11
Метки нет (Все метки)

Добрый день.
Подскажите пожалуйста.
Существует ли какой либо класс в C++ в Visual Studio для "INI - Загрузка и сохранение настроек" решения таких задач.
Нашел на Вашем сайте INI - Загрузка и сохранение настроек - но это для C++ Builder
Еще есть http://habrahabr.ru/post/149085/ ссылкой на http://qt-project.org/doc/qt-4.8/qsettings.html
Если есть скинте пожалуйста ссылку.
С уважением, Александр.
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
27.06.2014, 15:17
Я подобрал для вас темы с готовыми решениями и ответами на вопрос INI - Загрузка и сохранение настроек (C++):

Сохрание настроек формы в ini файл - C++
Скажите пожалуйста, как создать и сохранить в ini файл местоположение формы на экране? (с++) Заранее спасибо

Сохранение настроек и прочего непосредственно в самом .exe - C++
Меня интересуют способы, которые позволяют сохранять что либо, к примеру настройки программы, непосредственно в самом приложении .exe, во...

Сохранение/загрузка структуры - C++
Всем привет! Подскажите, что я делаю не так и где ошибки? Глаза уже все замылил, не могу нормально сохранить/открыть. По факту,...

Сохранение-Загрузка игры - C++
Всем доброго времени суток, слёзно прошу помощи, не получается реализовать сохранение и загрузку игры. Имеется класс CGame который...

Сохранение и загрузка данных в файл - C++
Добрый вечер всем. Столкнулся с какой-то элементарной проблемой, и не могу никак понять в чем траблы. Вот код: ... int main() ...

Загрузка и сохранение BMP файла - C++
Добрый день! Мне нужно загружать, а затем сохранять BMP файл, пока без обработки, просто загрузить в массив и потом из этого массива...

11
Sonance
6 / 6 / 3
Регистрация: 15.02.2013
Сообщений: 56
27.06.2014, 16:49 #2
ini это же обычный текстовый файл с текстом, зачем тут класс, библиотеки какие-то. Просто все нужные программе настройки сохраняем построчно в файл, а потом также читаем. Простая работа со строками.[quote="AlexLan73;

По поводу Builder'а не знаю, но использовать то что на хабре для просто записи в ini файл, это как ядерной бомбой по камару.
0
AlexLan73
2 / 2 / 1
Регистрация: 06.10.2013
Сообщений: 151
27.06.2014, 17:01  [ТС] #3
Спасибо))
Вы правы, текстовый файл, записать в vector а потом разобрать. Не сложно.
Но в С++ столько написано, что думал есть стандартная библиотека для файлов ini.
C уважением, Александр.
0
Kukurudza
105 / 86 / 6
Регистрация: 29.08.2012
Сообщений: 539
27.06.2014, 20:32 #4
Sonance, а если у меня инишка из 30 блоков, в каждом из них неизвестное количество ключей, как быть?
0
AlexLan73
2 / 2 / 1
Регистрация: 06.10.2013
Сообщений: 151
27.06.2014, 21:08  [ТС] #5
Наверно Sonance только учится, и не сталкивался с данной проблемой(((
У меня то же много параметров. И они меняются, минимум каждые 3 месяца.
Наверняка есть что то стандартное.
0
Kukurudza
105 / 86 / 6
Регистрация: 29.08.2012
Сообщений: 539
27.06.2014, 21:12 #6
Друзья, http://msdn.microsoft.com/ru-ru/libr...(v=vs.85).aspx
1
Sonance
6 / 6 / 3
Регистрация: 15.02.2013
Сообщений: 56
27.06.2014, 21:33 #7
Цитата Сообщение от Kukurudza Посмотреть сообщение
а если у меня инишка из 30 блоков, в каждом из них неизвестное количество ключей, как быть?
Не понял, как может быть неизвестное кол-во блоков. Программе до начала работы неизвестно сколько в ней параметров настройки?
Возможно мы с вами о разном говорим, примерчик можно, где понадобится писать в ини количество настроек не известное в заранее.
0
DiffEreD
1440 / 777 / 95
Регистрация: 21.06.2011
Сообщений: 1,740
Записей в блоге: 2
27.06.2014, 21:45 #8
В Boost.PropertyTree есть парсер ini файлов.
1
Kukurudza
105 / 86 / 6
Регистрация: 29.08.2012
Сообщений: 539
27.06.2014, 21:50 #9
Sonance, тогда нету смысла в ini файле. можно брать и все параметры тупо сохранять/читать построчно.
а в какой-то момент, я пришел к вам в команду, глядь, ини файл. взял и добавил строку с комментарием, а ваш "построчный парсер" никак этого не ожидал. и тут я засел искать причину магического поведения.
0
Vladimir.
158 / 158 / 10
Регистрация: 24.11.2009
Сообщений: 375
27.06.2014, 21:54 #10
где понадобится писать в ини количество настроек не известное в заранее.
легко: код обслуживает датчики, данные доступны по шине и лежат в регистрах с какими-то номерами. Количество регистров и типы переменных конкретны для датчика, и подгружаются из ini-фаила.
----------------------

ТС, скорее всего вас устроит boost:rogram_options
1
DiffEreD
1440 / 777 / 95
Регистрация: 21.06.2011
Сообщений: 1,740
Записей в блоге: 2
27.06.2014, 21:56 #11
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
Примерчик с PropertyTree:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <iostream>
#include <string>
#include <boost/property_tree/ptree.hpp>
#include <boost/property_tree/ini_parser.hpp>
 
int main()
{
   std::istringstream ini(R"(
 
   [Section1]
   Value1 = 10
   Value2 = a_text_string
 
   )");
 
   boost::property_tree::ptree pt;
   boost::property_tree::ini_parser::read_ini(ini, pt);
   std::cout << pt.get<std::string>("Section1.Value1") << std::endl;
   std::cout << pt.get<std::string>("Section1.Value2") << std::endl;
 
   return 0;
}
2
AlexLan73
2 / 2 / 1
Регистрация: 06.10.2013
Сообщений: 151
28.06.2014, 10:12  [ТС] #12
Спасибо за ответы, ссылки и пример DiffEreD.

Sonance - " Не понял, как может быть неизвестное кол-во блоков. Программе до начала работы неизвестно сколько в ней параметров настройки?
Возможно мы с вами о разном говорим, примерчик можно, где понадобится писать в ини количество настроек не известное в заранее."


Пишу робот для биржи, и количество бумаг, которыми робот может торговать - просто очень много. И робот(ы) в данный момент могут торговать 1 бумагой через час 10 бумагами, а завтра 50 + разные брокеры. По этому в ini прописываю параметры робота, бумаги, брокера. Так как разные брокеры разные параметры.

Еще раз спасибо за ссылки:
http://www.boost.org/doc/libs/1_55_0/doc/html/property_tree.html
http://msdn.microsoft.com/ru-ru/libr...(v=vs.85).aspx
буду разбираться.
С уважением, Александр.

Добавлено через 11 часов 40 минут
На эту тему есть хороший пример
http://www.devexp.ru/2010/02/chtenie-nastroek-prilozheniya/
оказалась файл типа info более удобней для моих задач.

Ребята спасибо за подсказку.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
28.06.2014, 10:12
Привет! Вот еще темы с ответами:

Загрузка и сохранение в двоичный файл - C++
Вот код, он полностью рабочий, просто под конец заметил, что загрузка, сохранение должны производиться в бинарный , а не в текстовый файл....

Сохранение и загрузка в бинарный файл - C++
Доброго времени суток. Прошу помочь с сохранением/загрузкой в/из файла. Есть два класса: CClient: class CClient { ...

Массив стуктур - загрузка/сохранение в файл - C++
Всем привет, Есть обыкновенный массив структур, например: struct lists1 { long int name; long int option; char descrip; ...

Загрузка массива и сохранение результата в файл - C++
Привет,написал прогу, и вней требовалось загрузить элементы массива из файла и после нахождения нужных значений сохранить результат в файл....


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
12
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru