Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2008.02.03;
Скачать: [xml.tar.bz2];

Вниз

Чтение массива из Ini-файла   Найти похожие ветки 

 
lookin ©   (2007-10-26 21:51) [0]

Как удобнее представить массив в ini-файле? Текущий вариант:
Array=0|1|2|3|4|
и разбор строки...

Может есть что стандартное для этой цели?


 
wicked ©   (2007-10-26 21:54) [1]

TStringList.DelimitedText


 
lookin ©   (2007-10-26 21:58) [2]

> [1] wicked ©   (26.10.07 21:54)


Это речь про разделитель. Все понятно, но мне бы стандартную структуру из инифайла...


 
JSman ©   (2007-10-27 01:45) [3]

в ини не хранятся массивы стандартным способом. можешь строку с сплитом там сохранить так, как ты хотел. все равно твоя прога читать будет.


 
Eraser ©   (2007-10-27 02:16) [4]

> [0] lookin ©   (26.10.07 21:51)

может сохранять в ini файл дамп памяти массива..? правда там ограничения жесткие на размер.


 
Германн ©   (2007-10-27 02:57) [5]


> lookin ©   (26.10.07 21:51)
>
> Как удобнее представить массив в ini-файле? Текущий вариант:
>
>

А смысл?
ini-файл - это некий стандарт. Который используется многими в любое время. Пусть устаревший, но всё же лучший, чем реестр (имхо).
А почему бы не "представить массив" в файле "своего", наиболее удобного формата?


 
Eraser ©   (2007-10-27 14:20) [6]

> [5] Германн ©   (27.10.07 02:57)


> но всё же лучший, чем реестр

далеко не лучше, ограничения прилинчные там и, как раз, списки строк там хранить сложно.. проблемы иногда возникают. самое универсальное это xml.


 
vpbar ©   (2007-10-27 14:29) [7]

Самое универсальное - это сделать свой формат. Для массива хранить как минимум дамп+длину. А стандартные форматы типа ini или  xml использовать если нужно передавать данные  программам или  нужна возможность вручную править настройки.


 
korneley ©   (2007-10-27 15:08) [8]


> Самое универсальное - это сделать свой формат
Полностью согласен. Но если массив/список небольшой размерности, то, наверное, можно и так
[ArrayValueSection]
001=Value1
002=Value2
...


 
Плохиш ©   (2007-10-27 17:11) [9]

Мне бы ваши проблемы...


 
lookin ©   (2007-10-29 17:03) [10]

Речь не про хранение данных per se, речь про хранение неких настроек, представленных в виде массива. Ну скажем, массив ширин столбцов, ну вы знаете, как пример - ширины столбцов в Коммандере. Вот такого рода массив загружается при старте программы, и сохраняется при выходе из нее. Хранить так, как посоветовано в [8], не очень удобно. Кстати, вот пришло в голову взглянуть в инифайл Тоталкоммандера, у него массив хранится в виде
Array=1,2,3,4, т.е. так или иначе проводится разбор строки на элементы при чтении инифайла...


 
Eraser ©   (2007-10-29 17:33) [11]


> lookin ©   (29.10.07 17:03) [10]

на сколько помню, для сохранения настроект параметров столбцов в listview есть спец. метод даже.


 
Вопрошающий   (2007-10-29 18:26) [12]


> Как удобнее представить массив в ini-файле?


А чем вызвана необходимость хранить массив именно в ini-файле, а не пользоваться более удобными для этого средствами?


 
Германн ©   (2007-10-30 00:55) [13]


> lookin ©   (29.10.07 17:03) [10]
>
> Речь не про хранение данных per se, речь про хранение неких
> настроек, представленных в виде...


Кстати о птичках. Может стоит посмотреть внимательно наследие RxLibrary? Насколько помню её создатели занимались этими вопросами. Их компонент TFormStorage из модуля Placemnt как раз и предназначен был для записи в ини-файл любых published свойств любых компонент, которые содержатся на форме.
А может в JVCL они даже пошли дальше и лучше?


 
em240 ©   (2007-10-30 10:22) [14]

[ArrayValueSection]
001=Value1| Value2| Value3
002= Value1| Value2| Value3

Потом с помощью функций для работы со строками(Rx,AcedUtils) получать нужные значения.


 
em240 ©   (2007-10-30 10:25) [15]

И ещё, посмотри в исходниках DBGridEh функцию
RestoreColumnsLayoutProducer


 
Сергей М. ©   (2007-10-30 10:30) [16]


> Как удобнее представить массив в ini-файле?


Например, в  CSV- или TSV-формате



Страницы: 1 вся ветка

Форум: "Основная";
Текущий архив: 2008.02.03;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.48 MB
Время: 0.044 c
15-1196539355
turbouser
2007-12-01 23:02
2008.02.03
Мастера


2-1199887795
Поручик
2008-01-09 17:09
2008.02.03
Получить писок файлов в папке.


15-1197962344
Loginov Dmitry
2007-12-18 10:19
2008.02.03
ProgressViewer


1-1193230015
pasha_golub
2007-10-24 16:46
2008.02.03
Не могу зайти дебаггером в исходники DBClient.pas


15-1198718830
koha overload
2007-12-27 04:27
2008.02.03
Оцените идею





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский