1

Тема: Библиотека Си для чтения конфигов

Подскажите пожалуйста лёгкую библиотеку для чтения конфигурационных файлов вида

[Main]
Autohide=0
Path=/home/user

[Graphics]
Bits=16
Height=480
Width=800

;комментарий

для подгрузки, скажем в main.c одной функцией

(P.S. нагуглить я и сам могу, я хотел бы знать,  чем пользуются форумчане-программисты)

iPad3, Ainol Novo7 Elf

2

Re: Библиотека Си для чтения конфигов

Поддержка файлов такого формата есть в Glib: http://library.gnome.org/devel/glib/uns … arser.html

Если Glib у тебя уже используется, то подойдёт. А вот если нет, то glib не очень-то лёгкая сама по себе.

N̶8̶0̶0̶ + N̶8̶1̶0̶ + N̶9̶0̶0̶ + N̶9̶5̶0̶ + N̶9̶ ̶C̶y̶a̶n̶ + N̶9̶ ̶B̶l̶a̶c̶k̶

3

Re: Библиотека Си для чтения конфигов

glib писали маньяки. Есть в qt4 поддержка такого дела. Если ни того, ни другого, то стандартными gnu либами я не помню что бы такое делалось. Есть куча сторонних открытых библиотек. Ну либо ручками.

4

Re: Библиотека Си для чтения конфигов

уж лучше glib чем qt4 O_o

iPad3, Ainol Novo7 Elf

5 Отредактировано Mitrandir (14-07-2010 22:11:10)

Re: Библиотека Си для чтения конфигов

Glib писали не маньяки, а довольно профессиональные люди. Благодаря этому glib имеет биндинги подо всё что движется, от перла и руби до луа и лиспа. Маньяки — это те, кто пишет под Gtk на чистом С smile
[spoiler]На самом деле надо просто привыкнуть smile
[/spoiler]

Qt, конечно, лучше и удобнее спроектирована. Но glib уже используется в большинстве софта для maemo и ubuntu. Да и вообще, glib гораздо легче чем Qt в плане потребления ресурсов.

N̶8̶0̶0̶ + N̶8̶1̶0̶ + N̶9̶0̶0̶ + N̶9̶5̶0̶ + N̶9̶ ̶C̶y̶a̶n̶ + N̶9̶ ̶B̶l̶a̶c̶k̶

6

Re: Библиотека Си для чтения конфигов

Чем больше вникаю, тем более считаю, что QT - это подстава и убитая идея by Nokia. Настолько сложно под ней сделать портируемое приложение... Постоянно надо помнить о том, под кого пишешь, какая версия библиотеки есть под нужный девайс и всё новые, изобретаемые в каждом релизе глюки...

Очередная загубленная идея

c приветом, gLobster
Nokia E7|Lumia 920 + TomTom Go Live 1000 + Lenovo IdeaPad Z370+ Motorola Xoom

7

Re: Библиотека Си для чтения конфигов

Ну, так или иначе, с использованием Qt написать приложение, портируемое между Maemo, MeeGo, Symbian, WinMo гораздо проще, чем без оного. Да, зачастую нужна перекомпиляция. Но для большинства платформ она нужна по определению — у них банально разное железо.
Чехарда с версиями, конечно, удручает. Эта чехарда вызвана, я думаю, общей неразберихой с MeeGo. Откуда-то взялось бешеное желание подогнать Qt под неприспособленный для него Fremantle, просто чтобы отчитаться, что «да-да, мы тоже Qt!». (В результате полный бред: в Qt появились константы типа Qt::WA_Maemo5StackedWindow или  Qt::WA_Maemo5PortraitOrientation — всё явно делалось в спешке)
Однако надо иметь в виду, что отличия между версиями — 0.1% от функционала Qt. Правда на данный момент это очень важный 0.1%: Mobility, Animation Framework и прочее. Но дык чего ожидать, если мобильный Qt, собственно, появился только полгода назад. «Какая версия библиотеки есть под нужный девайс» — это извечный вопрос, когда имеешь дело с недавно появившейся технологией. Позже общая необходимая функциональность будет на всех Qt-powered девайсах и проблем будет меньше.

N̶8̶0̶0̶ + N̶8̶1̶0̶ + N̶9̶0̶0̶ + N̶9̶5̶0̶ + N̶9̶ ̶C̶y̶a̶n̶ + N̶9̶ ̶B̶l̶a̶c̶k̶

8

Re: Библиотека Си для чтения конфигов

MeeGo не при чём. Я с QT начинал ещё на 3ьей версии. Для Симбиана. С момента покупки троллей нокией QT превратилось в QTopia.
И, кстати, Qt изначально была ориентирована именно на мобильный сегмент. Вы зря думаете про последние полгода. Полгода - это как её засветили для MeeGo. А до этого он  и для Diablo был. MeeGo не при чём. При чём общеглобальбная политика Нокии, которая упорно плюёт на разработчиков и в угоду каким-то внутренним политическим линиям непрерывно критически меняет своим же продукты, категорически плюя на обратную совместимость. Идёт какая-то идиотская гонка с номерами версий, выпуском новых с новыми багами и неизлечивающих старые. Недотестированные, зато с новыми возможностями, делающими нерабочими старые.
Всё для того, чтобы только отпугнуть разработчиков, но выдавать каждые 2 месяца победные реляции о новых взятых вершинах.

c приветом, gLobster
Nokia E7|Lumia 920 + TomTom Go Live 1000 + Lenovo IdeaPad Z370+ Motorola Xoom

9

Re: Библиотека Си для чтения конфигов

На мобильность Qt была нацелена никак не «изначально». Скорее её постепенно притягивали за уши. Сначала это была совершенно безуспешная Qtopia (которая, кстати, была ещё до покупки нокией, и уже нокия переименовала её в Qt Extended). А не так давно нокия взялась с новой силой притягивать десктопную по сути Qt на мобильные девайсы. Причём эта вторая эпоха ни с Qtopia, ни с Qt Embedded никак не связана абсолютно.

Про мобильность и полгода я говорил в связи с Qt Mobility. Её раньше не было. Поддержки звонков, контактов, gps в Qt for Diablo не было. Это была чисто десктопная версия Qt

N̶8̶0̶0̶ + N̶8̶1̶0̶ + N̶9̶0̶0̶ + N̶9̶5̶0̶ + N̶9̶ ̶C̶y̶a̶n̶ + N̶9̶ ̶B̶l̶a̶c̶k̶

10

Re: Библиотека Си для чтения конфигов

neutral

iPad3, Ainol Novo7 Elf

11

Re: Библиотека Си для чтения конфигов

Mitrandir пишет:

Поддержки звонков, контактов, gps в Qt for Diablo не было. Это была чисто десктопная версия Qt

Как-то мне режет слух сочетание diablo и десктопная в одном месте. Десктоп - это настольный компьютер.

Опать же термин Mobility очень спорен. Он означает версию для мобильных девайсов. И на момент создания Qtopia этот рынок в основном, составляли не только коммуникаторы и смартофоны.
То, что Нокия сменила названия продуктов, не поменяло их нацеленности. Qtopia стала Qt Mobile. Только и всего. А как было сдк для быстрого создания шустрых приложений на устройствах с малым экраном и ограниченными ресурсаму, так так им и осталось. Разве что планка ограничений существенно выросла. Концепция, по сравнению с кутопией не менялась.
Да и писал я, в общем, про то, что вместо создания удобного для девелопера продукта, нокия QT превратила в ещё одну полосу для бега с барьерами.

c приветом, gLobster
Nokia E7|Lumia 920 + TomTom Go Live 1000 + Lenovo IdeaPad Z370+ Motorola Xoom

12

Re: Библиотека Си для чтения конфигов

Вы судите о вещах только лишь по их названиям. Однако все эти термины имеют вполне конкретные значения.

Версия Qt для diablo на самом деле совершенно десктопная, т.к. это просто перекомпилированная для ARM десктопная Qt for Linux. Все дополнительные патчи и изменения касались только интеграции с Gtk и Hildon. Она ничем не более мобильная, чем настольная версия.

Термин Mobility нисколько не спорен -- это название одного из продуктов Qt. Qt Mobility -- это компонент Qt, предоставляющий доступ к звонкам, сообщениям, контакт-листу, GPS, и прочим мобильным фичам. Так вот Qt Mobility появился совсем недавно и вроде до сих пор не вышел из беты. Поддерживается он на Fremantle, MeeGo, Symbian и WinCE.
Qtopia не стала Qt Mobility. Они вообще не имеют ничего общего. Qtopia -- это application framework. Аналог хилдона. Полностью оболочка системы. Со своим Window manager, например. Это платформа. Даже ОС, если хотите (в том же смысле, что Android и Bada). Кутопия оказалась неуспешной, использовалась лишь на некоторых шарпах да на фрираннере. Через год после сделки с нокией кутопия была расформирована в Qt Extended и Qt for Embedded Linux. Эти двое и сейчас тихо почивают, всеми забытые.
А Qt Mobility -- это лишь один из многочисленных компонентов Qt, оболочка над сервисами нижележащей ОС. Поэтому даже если feature set Qtopia и Mobility и пересекаются, то реализация его всё равно абсолютно разная. Поэтому Qt Mobility это ни на минуту ни Qtopia, а совершенно другой, новый, недавно вышедший продукт.

Что-то я совсем флуд развёл

N̶8̶0̶0̶ + N̶8̶1̶0̶ + N̶9̶0̶0̶ + N̶9̶5̶0̶ + N̶9̶ ̶C̶y̶a̶n̶ + N̶9̶ ̶B̶l̶a̶c̶k̶

13

Re: Библиотека Си для чтения конфигов

Mitrandir
Все верно. Мне пришлось использовать Qtopia на Шарп Заурусах.
В то время еще и не было смартфонов и коммуникаторов smile
Довольно быстро я отказался от нее и перешел на PdaXrom,
а затем на Дебиан на Заурусе.
Приложений под Qtopia практически нет. А все гуевые фри программы юниксов не портануть туда потому что там X11 нет.

Был бы у Чехова автомобиль, поворотник бы Чехов включал.
N810 (DIABLO_5.2008.43-7)