|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
Здравствуйте. Хотел спросить, может ли xml-файл служить альтернативой ini-файлам? У меня имеется программа которая использует профили материалов. Каждый профиль - это отдельный ini-файл , в котором хранится информация о материале. Я просто с xml еще не работал. Можно ли например все профили хранить в одном xml-файле, т.е. получается своего рода база данных, а потом считывать обращаясь к секциями выбранного материала для загрузки его параметров? ... |
|||
:
Нравится:
Не нравится:
|
|||
29.08.2021, 17:08 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
Damir_85, да, конечно можно. Единственное, есть два типа парсеров XML, одни строят полностью дерево узлов (DOM, Document Object Model), другие проходят документ последовательно и полное дерево не строят (SAX - Simple API for XML). Часто используются парсеры первого типа, но если документ XML очень большой, то при использовании парсеров первого варианта могут возникать тормоза. Зависит наверное от реализации, но по-моему раньше, по крайней мере, это становилось актуальным на файлах в десятки мегабайт например. Если у вас данные меньше, то без проблем, можно использовать XML. Компонент TXMLDocument позволяет работать с XML. В Delphi впридачу есть мастер, позволяющий по схеме XML или по образцу разбираемого файла построить интерфейсы для работы с файлами конкретного вида. При открытом проекте File - New - Delphi Projects - XML - XML Data Binding. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.08.2021, 17:31 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
s62, спасибо. Да , думаю что нужно в моём случае использовать первый тип, т.к. файлов в целом по статистике накапливается немного, ну штук 8-10 максимум, да и секций в каждом штук 6-7. Так что копейки все это весит по информации. Да, конечное еще с этим форматом мне предстоит разбираться, что к чему) ... |
|||
:
Нравится:
Не нравится:
|
|||
29.08.2021, 17:37 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
Лучше сразу на json переходи. XML не эффективен и устарел. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.08.2021, 18:23 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
Damir_85может ли xml-файл служить альтернативой ini-файлам? Не может. Как вручную редактируемый формат он слишком заморочен. Как внутренний формат - слишком неэффективен. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
29.08.2021, 18:31 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
JSON по моему опыту получился "дешевле" в понимании и редактировании чем SQL. Но ini файл ещё проще ... |
|||
:
Нравится:
Не нравится:
|
|||
29.08.2021, 19:49 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
Damir_85 Здравствуйте. Хотел спросить, может ли xml-файл служить альтернативой ini-файлам? Нет, нельзя. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.08.2021, 19:50 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
Damir_85 Да, конечное еще с этим форматом мне предстоит разбираться, что к чему) Вот пример сохранения расписания в XML-файл и сам файл, который получается. Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63.
Файл: Код: xml 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20.
Да, можно пользоваться JSON, но для хранения настроек, профилей, как вы написали, и т.п., не играет особой роли избыточность текста в XML - ну будет в файле не 15 Кб, а 30 Кб, особой разницы нет. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.08.2021, 20:24 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
Damir_85 Здравствуйте. Хотел спросить, может ли xml-файл служить альтернативой ini-файлам? У меня имеется программа которая использует профили материалов. Каждый профиль - это отдельный ini-файл , в котором хранится информация о материале. Я просто с xml еще не работал. Можно ли например все профили хранить в одном xml-файле, т.е. получается своего рода база данных, а потом считывать обращаясь к секциями выбранного материала для загрузки его параметров? Как угодно можно организовать, главное чтоб было удобно Вам пользоваться. Хоть XML, ClientDataSet, TMemTableEh из EhLib, да хоть обычный DBF - все в одном файле будет. XML хорош тем, что туда можно разно-структурированные данные засунуть. Нормально вручную редактируемый и читаемый формат, тут на вкус и цвет кому как... ... |
|||
:
Нравится:
Не нравится:
|
|||
29.08.2021, 20:53 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
Damir_85, Может, действительно стоит использовать JSON, как написали. Он несколько компактней (зотя xml тоже можно делать более компактным, используя атрибуты и разумно короткие имена узлов). Я с JSON всего однажды или пару раз имел дело, относително давно, может быть с ним и меньше кода надо писать для сохранения/загрузки, точно не скажу. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.08.2021, 21:10 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
Все настройки должны быть в базе. Разве что, если важен код рабочего места - то его можно в инифайлик затулить. Но лучше использовать имя компьютера. Или номер ком порта (да и это лучше в базу, с привязкой к номеру рабочего места, а лучше - к имени компьютера). Зачем для этого xml - не знаю. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.08.2021, 22:08 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
YuRock Все настройки должны быть в базе Каждый раз, когда я это читаю, мне становится интересно - где хранить настройки соединения с базой. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.08.2021, 22:40 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
softwarer, Просто примени рекурсию. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.08.2021, 22:42 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
softwarer YuRock Все настройки должны быть в базе Каждый раз, когда я это читаю, мне становится интересно - где хранить настройки соединения с базой. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.08.2021, 04:42 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
YuRock Опять же, xml здесь не нужен. Да какая разница. С точки зрения этой задачи xml, json, ini, stringlist, registry, таблица в БД - эквивалентно тривиальные хранилища набора пар path.name=value. Если программист всерьёз задумывается о том, что же выбрать, и собирается писать разный код для этих случаев - он, мягко говоря, плохой программист. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.08.2021, 04:58 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
Как всегда, развели демагогию и флуд :) ИМХО, хранить лучше всего в том формате, для которого есть удобный парсер, позволяющий на "раз-два-три" читать/писать данные ... |
|||
:
Нравится:
Не нравится:
|
|||
30.08.2021, 07:39 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
YuRock Все настройки должны быть в базе. Ага. Причем сразу на Oracle, который живет на отдельном сервере. Автору: XML - хороший вариант, где можно потом и структуру контролировать, и всяких ORM навешать. Хоть и замороченный чуток (но это опциональные фичи, которые могут и не понадобиться никогда), но он явно переживет весь софт, который есть на данный момент. У классического JSON есть несколько тараканов, которые решены только в JSON5. Не критичны, но имеют место. А если нужна прям совсем лаконичность, то YAML ... |
|||
:
Нравится:
Не нравится:
|
|||
30.08.2021, 13:59 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakov Damir_85может ли xml-файл служить альтернативой ini-файлам? Как внутренний формат - слишком неэффективен. Это если сериализаторами не пользоваться. Но там всё равно лучше JSON. YuRock Все настройки должны быть в базе. ... даже когда нет базы вообще 😃 ... |
|||
:
Нравится:
Не нравится:
|
|||
30.08.2021, 14:25 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
Fr0sT-Brutal А если нужна прям совсем лаконичность, то YAML А для YAML есть что-то подобное https://github.com/grijjy/GrijjyFoundation/blob/master/Grijjy.Bson.Serialization.pas ? ... |
|||
:
Нравится:
Не нравится:
|
|||
30.08.2021, 14:31 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
Альтернатива ini-файлам - реестр. В нем можно хранить настройки программы, как общие для всех пользователей, так и для каждого конкретного пользователя отдельно. Если же цель состоит в обмене данными, то XML или JSON большой разницы нет. JSON в настоящее время моднее. " Каждый профиль - это отдельный ini-файл , в котором хранится информация о материале ". Идея хранения данных в ini-файлах со временем уступает место другим идеям. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.08.2021, 15:08 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
Wlr-l Альтернатива ini-файлам - реестр. По хорошему - для разных задач предназначенные. Реестр нужен для хранения данных с общим доступом, ini для внутри-програмных данных. Хранить внутренние настройки ПО в реестре - дурной тон. ИМХО. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.08.2021, 15:14 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
Wlr-l Альтернатива ini-файлам - реестр. В нем можно хранить настройки программы, как общие для всех пользователей, так и для каждого конкретного пользователя отдельно. Если же цель состоит в обмене данными, то XML или JSON большой разницы нет. JSON в настоящее время моднее. " Каждый профиль - это отдельный ini-файл , в котором хранится информация о материале ". Идея хранения данных в ini-файлах со временем уступает место другим идеям. как бы xml и json это немного разные вещи. json это посути тот же ini текстовый файл. а вот xml это уже строго структурированный файл, с xsd схемой описывающей его структуру. естественно что у xml оверхед значительно больше чем у простых текстовых файлов, просто не надо считать что если вы открыли файл по F3 и видите его содержимое то все просто :) И именно для обмена данными есть огромная разница между xml и json :) ... |
|||
:
Нравится:
Не нравится:
|
|||
30.08.2021, 16:06 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
Fr0sT-Brutal YuRockВсе настройки должны быть в базе. Ага. Причем сразу на Oracle, который живет на отдельном сервере.Особенно в этом случае. Тогда пользователь перейдет на другой компьютер, и не заметит, и ничего настраивать не надо. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.08.2021, 16:12 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
alekcvp YuRockВсе настройки должны быть в базе. ... даже когда нет базы вообще 😃В этом случае функции базы выполняет инифайл, т.ч. всё укладывается в мою архитектуру ... |
|||
:
Нравится:
Не нравится:
|
|||
30.08.2021, 16:13 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
Чисто технически можно. JSON - модно + есть возможность создавать вложенные узлы, т.е. возможностей потенциально больше. Но потом ручками редактировать будет сложновато, если оно, конечно, надо. Я уже перешел на JSON + хранение в БД. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.08.2021, 16:21 |
|
|
start [/forum/topic.php?fid=58&msg=40093685&tid=2037044]: |
0ms |
get settings: |
9ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
65ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
60ms |
get tp. blocked users: |
1ms |
others: | 268ms |
total: | 439ms |
0 / 0 |