crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

> QSettings. Escape-последовательности в ini файлах
Klabush
  опции профиля:
сообщение 14.1.2008, 13:38
Сообщение #1


Новичок


Группа: Новичок
Сообщений: 8
Регистрация: 10.10.2007
Пользователь №: 7

Спасибо сказали: 0 раз(а)




Репутация:   0  


Обычно из инишки данные читаются как-то так:

QSettings Settings("Program.ini", QSettings::IniFormat);
Settings.beginGroup("Common");
QString Path = Settings.value("Path", "").toString();


Но если значение какого-либо ключа в ini файле будет содержать бэкслеш (\), то он воспримется как escape-последовательность.

То есть если у нас в инишке

[Common]
Path=c:\test\77.txt


то в программе мы получим значение Path

c:<символ табуляции>estM.txt


Как эту "фичу" обойти?
Хотелось бы получить строку как она есть.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
 
Начать новую тему
Ответов
Litkevich Yuriy
  опции профиля:
сообщение 10.11.2008, 14:39
Сообщение #2


разработчик РЭА
*******

Группа: Сомодератор
Сообщений: 9669
Регистрация: 9.1.2008
Из: Тюмень
Пользователь №: 64

Спасибо сказали: 807 раз(а)




Репутация:   94  


судя по примерам в описании класса QSettings, это возможно.
Ты какой формат используешь и на какой системе?

ага, я кажется понял. слэш всяко будет суб ключи создавать, но ты можешь и обращатся в той же манере к ним как и записывал:
 QSettings settings;
settings.setValue("animal/snake", 58);
settings.value("animal/snake", 1024).toInt();   // returns 58
settings.value("animal/zebra", 1024).toInt();   // returns 1024
settings.value("animal/zebra").toInt();         // returns 0
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

Сообщений в этой теме
- Klabush   QSettings. Escape-последовательности в ini файлах   14.1.2008, 13:38
- - archimed7592   Цитата(Klabush @ 14.1.2008, 13:38) Как эт...   14.1.2008, 13:45
|- - Klabush   Цитата(archimed7592 @ 14.1.2008, 13:45) 1...   14.1.2008, 14:01
- - archimed7592   Ну, не посвящённым в таинства С++ админам не соста...   14.1.2008, 14:14
- - ViGOur   Цитата(archimed7592 @ 14.1.2008, 14:14) Н...   14.1.2008, 14:18
- - kuler   а у меня проблема наоборот, нужно сохранить ключ a...   10.11.2008, 11:24
- - Litkevich Yuriy   kuler, код приведи, как ты это делаешь   10.11.2008, 14:06
- - kuler   QSettings settings("Unit", "Subunit...   10.11.2008, 14:15
- - Litkevich Yuriy   судя по примерам в описании класса QSettings, это ...   10.11.2008, 14:39
|- - AD   Цитата(Litkevich Yuriy @ 10.11.2008, 14:3...   10.11.2008, 14:55
- - kuler   AD, это из хелпа   10.11.2008, 15:13
|- - AD   Цитата(kuler @ 10.11.2008, 15:13) AD, эт...   10.11.2008, 17:24
- - kuler   выдает 58, тк такое значение есть, выдает 1024 тк ...   10.11.2008, 17:27
- - Litkevich Yuriy   Цитата(AD @ 10.11.2008, 20:24) Какая разн...   10.11.2008, 18:07
|- - AD   Цитата(Litkevich Yuriy @ 10.11.2008, 18:0...   10.11.2008, 18:37
- - molchanoviv   Подниму старую тему. Может кому-то понадобится. чт...   30.12.2009, 17:38


Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0




RSS Текстовая версия Сейчас: 23.11.2024, 3:38