Форум: "Прочее";
Текущий архив: 2013.03.22;
Скачать: [xml.tar.bz2];
ВнизXML - нафига козе боян? Найти похожие ветки
← →
Пит (2012-10-15 15:01) [40]
> Структурно и XML не поддерживает иерархию
ну не пиши бред... Как раз в формате XML описана иерархичность, есть разделение на ноды (узлы) и стандартизировано, как XML разбить на ноды. Также описано, как одна нода может в себе содержать другие ноды с неограниченной глубиной вложенности. Это всё в стандарте, а не накрученное конкретным разработчиком.
> это всего лишь какой-то текст. :)
ты загнался в попытках абстракционизма. С твоей точки зрения протокол FTP ничем не отличается от протокола HTTP, ибо это всего лишь какой-то текст.
Ни одно место XML не может содержать ПРОИЗВОЛЬНЫЙ текст. Так или иначе по стандарту текст экранируется соответствующим образом, в зависимости от местоположения в структуре XML. Так что это не просто какой-то текст, а текст в соответствии стандарту.
Единственным, имхо, способом написать в любом протоколе произвольный текст, это указание, что следующие XXX байтов считать произвольным текстом. Вот тогда далее информация длиной в XXX байт может содержать любую абсолютно информацию. Но даже такого нету в XML.
Попробуй сделать Xml-документ содержимым:op3iueagagboaergh
Тебе любой парсер тут же скажет, что не найдена корневая нода, потому что она ДОЛЖНА быть. И это еще раз говорит о том, что XML это не всего лишь какой-то текст, а вполне определенный текст.
← →
брат Птибурдукова (2012-10-15 15:04) [41]
> с этим списком жутко неудобно работать. Например, тебе нужно
> удалить device_1, тогда cnt_deviсe нужно уменьшить на один,
> а данные device_2 переписать в device_1
Зачем? Удалил device_1, потом прочитал всю секцию в stringlist и работай. И count не нужен.
ЗЫ. Я не оправдываю использование ini. :-)
← →
Пит (2012-10-15 15:09) [42]
> Зачем? Удалил device_1, потом прочитал всю секцию в stringlist
> и работай. И count не нужен.
а как ты будешь сохранять потом всё это? Полюбому в цикле со счетчиком.
А значит по факту у тебя получится, что ты удалил запись device_1, а все остальные после неё сдвинул вверх на 1. Просто ты описал более-менее удобный программный способ.
← →
Пит (2012-10-15 15:10) [43]
> Просто ты описал более-менее удобный программный способ.
в предположении, что в этой секции не хранится ничего другого, кроме нужных тебе строчек. А там могут храниться и комментарии, которые тоже считаются скорее всего )))
Тогда тебе придётся после этого фильтровать по префиксу или как-то так. Тем xml и удобнее.
← →
icelex © (2012-10-15 15:11) [44]ну все, понеслась душа в рай...
понедельник на дворе, а не пятница ведь...
← →
Ega23 © (2012-10-15 15:50) [45]
> А что над ini? Почему не над txt навернуть, что хочется?
Можно и над txt. По-сути, расширение *.xml тебе ничего не даёт, кроме выбора программы по-умолчанию и выбора подсветки синтаксиса по-умолчанию в notepad++ :)
← →
Ega23 © (2012-10-15 15:59) [46]
> Как раз в формате XML описана иерархичность, есть разделение
> на ноды (узлы) и стандартизировано, как XML разбить на ноды
Мне НИКТО не мешает записать этот самый xml не по-стандарту, начхать на экранирование, забыть указать кодировку, забить на обязательный корневой узел (или сделать их 100500 с одинаковым именем ROOT) и т.д.
Вообще никто.
Просто тогда стандартный DOM-парсер накроется медным тазом. Но никто не мешает мне поставлять свой собственный, с шахматами и поэтессами.TEga23XMLDocument = class (TInterfacedObject, IXMLDocument);
TEga23XMLNode = class (TInterfacedObject, IXMLNode);
И всё. Сохраняй хоть в ini, хоть в БД, хоть в JSON или вообще в TIFF между строк шифруй.
Просто зачем изобретать велосипед? :)
← →
Плохиш © (2012-10-15 16:28) [47]
> Мне НИКТО не мешает записать этот самый xml не по-стандарту
Это будет уже не xml, обычный набор байтов для одной отдельно выбранной песочницы.
← →
Пит (2012-10-15 16:35) [48]
> Просто тогда стандартный DOM-парсер накроется медным тазом.
Олег, у тебя как выходные то прошли? ))
Ты вообще со стороны то почитай, что ты пишешь.
Конечно, ты можешь изобрести свой стандарт, свое описание, сделать свой парсер - наздоровье, но причем тут XML?!?!?!?!?!
Ты говоришь, что в XML не описана иерархичность на основе того, что ты можешь изобрести собственный стандарт, отличный от XML. Олег, ты сейчас о чем?!
XML - это стандарт, есть ДОКУМЕНТАЦИЯ, описывающая этот стандарт, в этой документации четко дается понять об иерархичности нод, которые являются частью XML-документа. Поэтому я и говорю, что в структуре XML предусмотрена иерархия!!
А ты говоришь, что можешь создать свой аналог XML без иерархии... ну и что? Где логика, Олег?!
← →
Пит (2012-10-15 16:37) [49]Олег, ты меня извини, но ты просто напалмом жжошь. Ты с этой же точки зрения можешь заявить, что в стандарте HTML нет понятия тегов! Когда на тебя посмотрят и скажут - как это нету тегов? Ты скажешь, что можешь придумать свой HTML без тегов, написать свой браузер и оно будет работать. А значит в описании стандарта HTML нет понятия tag! Гениально нах...
← →
Пит (2012-10-15 16:40) [50]а еще можно утверждать, что в современных компьютерах не используется двоичная система счисления. Потому что можно придумать компьютер (да и придумали уже), которые работает в троичной системе. И на основе этого значит делаем вывод, что в текущих компьютерах нет никакой двоичной системы, это просто поток битов... я кажется понял логику...
← →
Ega23 © (2012-10-15 16:48) [51]Я не вижу в файле 1.xml с содержимым
<?xml version="1.0" encoding="windows-1251"?><Document xxx="ttt" />
никакой иерархии. Я вижу ровно одну строку.
Иерархия это или нет - решает тот, кто разбирает этот текст.
> XML - это стандарт, есть ДОКУМЕНТАЦИЯ, описывающая этот
> стандарт
Это стандарт ФОРМАТА ЗАПИСИ. Ощущаешь нюанс?
← →
Ega23 © (2012-10-15 16:56) [52]
> ы с этой же точки зрения можешь заявить, что в стандарте
> HTML нет понятия тегов! Когда на тебя посмотрят и скажут
> - как это нету тегов? Ты скажешь, что можешь придумать свой
> HTML без тегов, написать свой браузер и оно будет работать.
Скажи мне, можно в DOM добавлять узлы в динамике?
← →
han_malign (2012-10-15 17:10) [53]
> Это стандарт ФОРМАТА ЗАПИСИ.
- стандарт представления данных.
А вот если брать полный стандарт, со схемами, трансформациями и т.д. - то это уже стандарт описания автоматизации представления, проверки и обработки данных...
← →
Ega23 © (2012-10-15 17:13) [54]
> han_malign (15.10.12 17:10) [53]
Возможно.
Можно ли такое навернуть в качестве надстройки над ini? Можно, но бессмысленно.
← →
Пит (2012-10-15 17:26) [55]
> Я не вижу в файле 1.xml с содержимым
> <?xml version="1.0" encoding="windows-1251"?><Document xxx="ttt"
> />
Олег, причем тут конкретный файл XML?! Я говорю о том, что СТАНДАРТ XML ПРЕДУСМАТРИВАЕТ ИЕРАРХИЮ И ОПИСЫВАЕТ ЕЁ.
В конкретном экземпляре может и не быть иерархии, вложенности. Ты опять считаешь это доказательством того, что в стандарте XML нету иерархии?
А если я написал программу на дельфи, не используя тип TFileStream, то файловых потоков в дельфи не существует? Олег, что с тобой? ))
> Скажи мне, можно в DOM добавлять узлы в динамике?
конечно, можно.
Только какое это отношение имеет к обсуждаемому вопросу.
Олег, еще раз!!1 В описании стандарта XML в явном виде описана иерархия. Зачем ты делаешь вид, что не понимаешь такой элементарной вещи? У тебя утверждения из области:
> я вижу запрос SQL:
>update MyTable set MyField = 5
Отсюда делаем вывод, что в стандарте SQL нет понятия строк.
← →
Ega23 © (2012-10-15 17:28) [56]Читай ветку с самого начала.
← →
KSergey © (2012-10-15 17:31) [57]Что вы сделали с аффтаром ветки??
← →
Плохиш © (2012-10-15 17:47) [58]
> KSergey © (15.10.12 17:31) [57]
> Что вы сделали с аффтаром ветки??
аффтар высасывает следующую "проблему" из пальца. Ждёмс следующий вброс.
← →
Пит (2012-10-15 18:01) [59]
> Читай ветку с самого начала.
1) я читал ветку с самого начала
2) по-моему, есть описание формата XML:
http://www.w3.org/TR/xml11/
по-моему, ты уже очевидно гонишь пургу и время сделать вид, что это была шутка - прошло. понимаю вопросы гордости - так что давай закончим.
← →
Ega23 © (2012-10-15 18:05) [60]
> 2) по-моему, есть описание формата XML:
Если ты читал ветку с самого начала, то ты должен был увидеть, что я это и говорил.
← →
Пит (2012-10-15 19:19) [61]да я согласен ок, XML - это просто текст, набор произвольных байтов.
← →
Пит (2012-10-15 19:20) [62]это если конечно читать данную ветку сначала.
← →
Ega23 © (2012-10-15 19:28) [63]
> да я согласен ок, XML - это просто текст, набор произвольных
> байтов.
Не совсем произвольных, это всё-таки текст.
Ну а коли так, то следующий вопрос: можно ли также реализовать вот всё то же самое, что есть в xml, но только с помощью ini?
Ответ: можно. Это будет жуткий плохо читабельный монстр. Но - можно.
← →
Андреевич (2012-10-15 19:34) [64]Еще больше возненавидел xml после того как парсер (XmlSerializer в шарпе) отказался десерилизовать структуру потому что структура текста с XML была вручную немного подредактирована (с косяками). И все - это не валидный формат, не буду грузить.
← →
Rouse_ © (2012-10-15 19:36) [65]
> Пит (15.10.12 19:19) [61]
> да я согласен ок, XML - это просто текст, набор произвольных
> байтов.
>
>
Один из разработчиков формата (стандарта?) XML долгое время тролил народ на форумах фразами типа, да, XML выглядит и читается как обычный текст, но на самом деле это не текст :)
К сожалению не могу найти ссылку на форум, но было забавно :)
← →
Пит (2012-10-15 20:32) [66]
> Не совсем произвольных, это всё-таки текст.
с чего ты взял?!
Я вот только что сделал XML-документ, где есть куча не символьных байтов. Правда, этот файл отказываются открывать существующие xml-парсеры, но что мне мешает написать свой:TPitXMLDocument
?
← →
Rouse_ © (2012-10-15 20:36) [67]
> Я вот только что сделал XML-документ, где есть куча не символьных
> байтов.
В стандарте XML оговаривается что он может содержать и в каком формате, ты нарушил стандарт, стало быть это не XML документ. Можешь за одно таблицу инициализации Base64 поменять на свою и написать TPitBase64 :) До кучи полином у CRC32 сменить, дабы всем поплохело :)
← →
Ega23 © (2012-10-15 20:53) [68]
> с чего ты взял?!
Нулевой байт туда пропиши.
← →
QAZ2 (2012-10-15 21:07) [69]
> Что вы сделали с аффтаром ветки??
ничо, я только дочитал :)
> В описании стандарта XML в явном виде описана иерархия
есть такой штука как TTreeView c методами SaveToFile и LoadFromFile
и о чудо там тоже есть иерархия и никаких XML ненадо
← →
Rouse_ © (2012-10-15 21:20) [70]
> QAZ2 (15.10.12 21:07) [69]
> есть такой штука как TTreeView c методами SaveToFile и LoadFromFile
> и о чудо там тоже есть иерархия и никаких XML ненадо
Мндя, а еще есть такая штука как различные версии дельфи, которые твою "штуку" сохраняют так как им хочется :) А ведь ты поддерживаешь свой продукт и наверное захочешь чтобы твое ПО за 2012 год прочитало данные записанные твоим-же ПО выпущенным году эдак в двухтысячном.
← →
Ega23 © (2012-10-15 21:25) [71]А разве у TTreeView есть LoadFromFile и SaveToFile?
Чёта навскидку не помню такого, а смотреть - лень.
← →
asail © (2012-10-15 21:29) [72]
> Андреевич (15.10.12 19:34) [64]
> Еще больше возненавидел xml после того как парсер (XmlSerializer
> в шарпе) отказался десерилизовать структуру потому что структура
> текста с XML была вручную немного подредактирована (с косяками).
INI-файл проблему, конечно, решил в данном случае?
А если я avi-файл вручную подкорректирую, да еще и с косяками? Так, что ни один плеер его показывать не будет. Мне надо будет возненавидеть avi файлы? :)
← →
Rouse_ © (2012-10-15 21:30) [73]
> Ega23 © (15.10.12 21:25) [71]
Есть но хреново работает :)
http://qc.embarcadero.com/wc/qcmain.aspx?d=66810
← →
icelex © (2012-10-15 21:32) [74]
> Андреевич (15.10.12 19:34) [64]
> Еще больше возненавидел xml после того как парсер (XmlSerializer
> в шарпе) отказался десерилизовать структуру потому что структура
> текста с XML была вручную немного подредактирована (с косяками).
> И все - это не валидный формат, не буду грузить.
а xml-то тут причем?
открой вона doc-файл в текстовом редакторе, да подредактируй там что-нибудь, а потом Word начинай ненавидеть
← →
Dimka Maslov © (2012-10-15 21:33) [75]
> Ega23 © (15.10.12 21:25) [71]
Таки есть, сохраняет в текстовом формате с табуляциями. При этом в терминах XML сохраняются только имена узлов, но не значения и атрибуты, коих в TreeView нет буквально вообще.
← →
asail © (2012-10-15 21:34) [76]
> QAZ2 (15.10.12 21:07) [69]
> и о чудо там тоже есть иерархия и никаких XML ненадо
Еще раз. Можно и в бинарных файлах все хранить (кстати, можно уйму доводов привести в поддержку именно их). INI это еще один из стандартных форматов. Со своими плюсами и минусами. Можно еще и CSV вспомнить... Почему его не использовать? Чем INI лучше?
← →
QAZ2 (2012-10-15 21:42) [77]
> Чем INI лучше?
незнай я им не пользуюсь :)
я вообще не понимаю форматов "которыемогутчитатьсячеловеком" ибо каждый ботан будет пытаться его изменить и поглядеть что из этого будет
← →
Rouse_ © (2012-10-15 21:43) [78]
> QAZ2 (15.10.12 21:42) [77]
> я вообще не понимаю форматов "которыемогутчитатьсячеловеком"
> ибо каждый ботан будет пытаться его изменить и поглядеть
> что из этого будет
HTML, как я понял, только что умер в твоих глазах?
← →
Игорь Шевченко © (2012-10-15 21:43) [79]Троллить - в другое место.
← →
Ega23 © (2012-10-15 21:57) [80]
> Есть но хреново работает :)
О блин, не знал... :)
Страницы: 1 2 3 вся ветка
Форум: "Прочее";
Текущий архив: 2013.03.22;
Скачать: [xml.tar.bz2];
Память: 0.63 MB
Время: 0.08 c