Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2008.02.03;
Скачать: CL | DM;

Вниз

Чтение массива из 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;
Скачать: CL | DM;

Наверх




Память: 0.5 MB
Время: 0.022 c
1-1191152330
Farel
2007-09-30 15:38
2008.02.03
Отправка писем с помощью fastnet


2-1199811622
Евгений Р.
2008-01-08 20:00
2008.02.03
MDI приложение


2-1199739181
wipr
2008-01-07 23:53
2008.02.03
Как извлечь результат запроса из bdpCommand C#


2-1199293276
Первокласник Вася
2008-01-02 20:01
2008.02.03
Как работать с дисками?


15-1198261166
БарЛог
2007-12-21 21:19
2008.02.03
Новый год по-админски =)