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

Вниз

XML - нафига козе боян?   Найти похожие ветки 

 
QAZ2   (2012-10-15 11:31) [0]

Интересно узнать для чего, почему и зачем оно надо...
раньше ведь люди както жили и без него :)


 
Рамиль ©   (2012-10-15 11:33) [1]

И без компьютеров люди жили.


 
Rouse_ ©   (2012-10-15 11:41) [2]

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


 
QAZ2   (2012-10-15 11:47) [3]


> Rouse_ ©   (15.10.12 11:41) [2]

а что мешает это сделать через ini например ?

мне интересна глобальная идея возникновения подобных "гениальных языков\технологий"


 
Ega23 ©   (2012-10-15 11:47) [4]


> Интересно узнать для чего, почему и зачем оно надо...

Более-менее универсальный формат для обмена данными.


 
Ega23 ©   (2012-10-15 11:48) [5]


> а что мешает это сделать через ini например ?

Ништо не мешает, ini-наше фсьё!


 
Компромисс ©   (2012-10-15 11:48) [6]

http://ru.wikipedia.org/wiki/XML#.D0.94.D0.BE.D1.81.D1.82.D0.BE.D0.B8.D0.BD.D1.81.D1.82.D0.B2.D0.B0


 
brother ©   (2012-10-15 11:49) [7]

[5] поддерживаю!


 
xayam ©   (2012-10-15 11:50) [8]


> а что мешает это сделать через ini например ?

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


 
QAZ2   (2012-10-15 11:53) [9]


> Более-менее универсальный формат для обмена данными.

это былобы так, еслибы файл созданный в одной программе открывался также в совершенно другой программе
но я почему то таких чудес не встречал :)


 
QAZ2   (2012-10-15 11:56) [10]


> xayam ©   (15.10.12 11:50) [8]

о, отлично, понеслась...
в чем нормальность\лучшесть XML против INI ?
также как чем отличается Samsung купленый в Ашане от  Samsungа купленного в Техносиле?


 
Dimka Maslov ©   (2012-10-15 11:56) [11]

Главный недостаток XML - нельзя грабить корованы. Но когда надобно передавать более-менее структурированные данные между различными приложениями - вещь весьма полезная. А при наличии развитых стандартных средств парсинга - просто незаменимая если надо быстро, просто и без изобретения велосипеда.


 
Ega23 ©   (2012-10-15 12:00) [12]


> это былобы так, еслибы файл созданный в одной программе
> открывался также в совершенно другой программе

Более-менее универсальный ФОРМАТ для обмена данными


 
xayam ©   (2012-10-15 12:01) [13]


> о, отлично, понеслась...

сомневаюсь :)


 
QAZ2   (2012-10-15 12:01) [14]


> Компромисс ©   (15.10.12 11:48) [6]

Рассмотрим пример простого кулинарного рецепта, размеченного с помощью XML:

<?xml version="1.0" encoding="UTF-8"?>
<recipe name="хлеб" preptime="5" cooktime="180">
 <title>Простой хлеб</title>
 <composition>
   <ingredient amount="3" unit="стакан">Мука</ingredient>
   <ingredient amount="0.25" unit="грамм">Дрожжи</ingredient>
   <ingredient amount="1.5" unit="стакан">Тёплая вода</ingredient>
   <ingredient amount="1" unit="чайная ложка">Соль</ingredient>
 </composition>
 <instructions>
   <step>Смешать все ингредиенты и тщательно замесить.</step>
   <step>Закрыть тканью и оставить на один час в тёплом помещении.</step>
   <!-- <step>Почитать вчерашнюю газету.</step> - это сомнительный шаг... -->
   <step>Замесить ещё раз, положить на противень и поставить в духовку.</step>
 </instructions>
</recipe>


в какое Ж засунуть этот шикарно размеченый текст чтобы увидеть собственно его шикарность?


 
Dimka Maslov ©   (2012-10-15 12:03) [15]


> QAZ2   (15.10.12 12:01) [14]


XML предназначен для передачи данных между компьютерными системами, а не между оными и человеком. Поэтому не надо путать его с HTML, у них разная специализация.


 
QAZ2   (2012-10-15 12:04) [16]


> ФОРМАТ для обмена данными

вроде как язык, не ?

> А при наличии развитых стандартных средств парсинга

тоесть для ini нет развитых стандартных средств парсинга? и нужно долго изобретать велосипед?


 
AV ©   (2012-10-15 12:04) [17]

Просто, формат, о котором договорились.
в следствии чего уже понаписали кучу всего под него для облегчения жизни
+Читабелен, даже людьми

под свои нужды редко юзаю
Мне не нравится xml. В основном, из-за размеров
но это ничего не значит :)


 
Ega23 ©   (2012-10-15 12:06) [18]


>  этот шикарно размеченый текст

Ну где тыт тут щикарность увидел?
Щикарно будет разбивать всё по символам и каждому символу id назначать, вот где щикарно будет.


 
QAZ2   (2012-10-15 12:07) [19]


> AV ©   (15.10.12 12:04) [17]

нене , ненадо стандартных фраз из википедии и прочих....
ini тоже более чем стандарт и даже использовался виндой и тоже ГОРАЗДО лучше читается человеком :)


 
Dimka Maslov ©   (2012-10-15 12:08) [20]


> QAZ2   (15.10.12 12:04) [16]


Да язык, но для специфических целей.


> тоесть для ini нет развитых стандартных средств парсинга?
>  и нужно долго изобретать велосипед?


Формат ini поддерживает только два уровня вложенности. Возможности XML гораздо шире.


 
QAZ2   (2012-10-15 12:10) [21]


> Формат ini поддерживает только два уровня вложенности

да что ты ? у тебя бедная фантазия :)


 
Компромисс ©   (2012-10-15 12:14) [22]

QAZ2   (15.10.12 12:01) [14]

Вопрос не корректен. Не надо путать стандарт XML со стандартами типа MP3 или JPG.
MP3 и JPG - это стандарты для содержимого файла, а XML - это стандарт для определения стандартов. Например, XML определяет HTML и SOAP. А вот уже файлы с расширением HTML можно открывать в любом браузере, аналогично по wsdl можно генерировать веб сервисы или клиенты для них.


 
icelex ©   (2012-10-15 12:16) [23]


> QAZ2   (15.10.12 11:31) 
> Интересно узнать для чего, почему и зачем оно надо...
> раньше ведь люди както жили и без него :)

не нужно - не используй
нужно - используй
не знаешь как и назачем - не используй
хочется пообсуждать на пустом месте - ну ты понел...


 
xayam ©   (2012-10-15 12:24) [24]


> у тебя бедная фантазия :)

да нет. А почему именно ini, а не json например?


 
icelex ©   (2012-10-15 12:27) [25]


> А почему именно ini, а не json например?

когда в руке только молоток, все вокруг похоже на гвоздь


 
xayam ©   (2012-10-15 12:30) [26]


> когда в руке только молоток, все вокруг похоже на гвоздь

:) точно

но вопрос, мне кажется у человека вопрос только в синтаксисе.
При желании xml можно оформить в виде ini, но у кого есть такое желание ?


 
знайка   (2012-10-15 12:36) [27]

Еще например к xml можно прикрутит xslt, на выходе можно получить все что угодно, а с ини так сделать можно?


 
xayam ©   (2012-10-15 12:41) [28]


>  а с ини так сделать можно?

...

> у тебя бедная фантазия


 
AV ©   (2012-10-15 12:52) [29]


> QAZ2   (15.10.12 12:07) [19]
> > AV ©   (15.10.12 12:04) [17]
> нене , ненадо стандартных фраз из википедии и прочих....

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


 
Игорь Шевченко ©   (2012-10-15 12:56) [30]

Троллить - в другое место


 
Ega23 ©   (2012-10-15 12:59) [31]


> Еще например к xml можно прикрутит xslt, на выходе можно
> получить все что угодно, а с ини так сделать можно?


Можно.


 
знайка   (2012-10-15 13:03) [32]


> Можно.
Это понятно, а затраты?
А тут имея например только браузер и блокнот, без проблем.


 
Ega23 ©   (2012-10-15 13:10) [33]


> А тут имея например только браузер и блокнот, без проблем.


XML не предполагает наличие браузера. XML - это текст. А как ты его будешь читать - это твои половые трудности.


 
TUser ©   (2012-10-15 13:17) [34]

Удобно, не надо изобретать свой парсер для конкретного формата.


 
Sergey Masloff   (2012-10-15 14:28) [35]

1) Стандартные средства описания структуры (XSD)
2) Стандартные средства валидации (платформонезависимые)
3) Стандартные средства трансформации (XSLT)
4) Стандартные средства навигации (XPATH)

афтар прикрути все это к ini и будем разговаривать дальше (например про отраслевые стандартны обмена гугли ACORD XML)


 
Пит   (2012-10-15 14:34) [36]


> а что мешает это сделать через ini например ?


1) структурно ini-файлы не поддерживают истинную иерархию.
ini это пара "Ключ = Значение", с иерархией первого уровня, то есть группировкой по секциям.

Попробуй в INI-файле описать такую структуру:

<devices>
   <com_port>
       <controller_tg_240>
           ...param param param...
       </controller_tg_240>
       <controller_tg_240>
           ...param param param...
       </controller_tg_240>
   </com_port>
</devices>


XML поддерживает неограниченную иерархию.

2) INI-файлы не могут по своей структуре иметь одинаковые названия на одном уровне иерархии.

В примере выше на втором уровне мы видим две записи: <controller_tg_240>
В xml это прекрасно уживается. В ini нельзя, чтобы две секции или два парметра в одной секции назывались одинаково.

Иными словами ini файл неудобен для создания списка. Тебе придется эмулировать список, вводить переменную - длина списка. А дальше элементы списка обозначать:

cnt_device = 3

device_0 = ...
device_1 = ...
device_2 = ...


с этим списком жутко неудобно работать. Например, тебе нужно удалить device_1, тогда cnt_deviсe нужно уменьшить на один, а данные device_2 переписать в device_1

При больших списках это жутко неудобно, а для редактирования ручками - удалить пятую позицию, если позиций 100 - уже супер гемор. В XML же нужно удалить одну ноду и все, она независима от соседей.

3) много параметричность:

даже если тебе нужно хранить два значения для одной сущности, уже тяжело, тебе придётся писать что-то типа:

cnt_device = 2

device_0_paramaA = ...
device_0_paramaB = ...
device_1_paramaA = ...
device_1_paramaB = ...


А в xml это может быть красиво например так:

<device paramA="..." paramB="..." />
<device paramA="..." paramB="..." />


что и компактнее, и работать удобнее.

Плюс как правильно заметили XML стал всемирным форматом по следам HTML. Кросс-платформенным, а также там в частности есть указания кодировки, заголовки, служебная информация и прочее.

Ну это что первое в голову пришло.


 
Ega23 ©   (2012-10-15 14:43) [37]


> 1) структурно ini-файлы не поддерживают истинную иерархию.

Структурно и XML не поддерживает иерархию, это всего лишь какой-то текст. :)
Формат записи - это формат записи. Парсер - это парсер. Структуры в памяти - это структуры в памяти.
Можно и над форматом записи ini навернуть парсер a-la XML. Можно и наоборот. Было бы желание.


 
Inovet ©   (2012-10-15 14:52) [38]

> [37] Ega23 ©   (15.10.12 14:43)

А что над ini? Почему не над txt навернуть, что хочется?


 
Sergey Masloff   (2012-10-15 14:54) [39]


> Можно и над форматом записи ini навернуть парсер a-la 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]


> Есть но хреново работает :)

О блин, не знал...  :)


 
Ega23 ©   (2012-10-15 21:59) [81]


> я вообще не понимаю форматов "которыемогутчитатьсячеловеком"
> ибо каждый ботан будет пытаться его изменить и поглядеть
> что из этого будет


Прально, нафига компиляторы нужны?
Даёшь двоичный код!


 
QAZ2   (2012-10-15 22:07) [82]

не тут типа говорили про обмен данными между приложениями, я про это а не техт вообще


 
Rouse_ ©   (2012-10-15 22:15) [83]


> QAZ2   (15.10.12 22:07) [82]
> не тут типа говорили про обмен данными между приложениями

Обмен данными тут приводили, как один из возможных вариантов использования вышеозвученного формата :)
Можно и INI использовать, но тут уж кому как удобнее, даже штаны через голову, при должной подготовке, можно надеть ;)


 
icelex ©   (2012-10-15 22:32) [84]

при желании можно, наверно, и шубу в трусы заправить, но нафига, если ее навыпуск носят?


 
Пит   (2012-10-15 22:38) [85]


> В стандарте XML оговаривается что он может содержать и в
> каком формате, ты нарушил стандарт, стало быть это не XML
> документ.

читай ветку с самого начала )


> Нулевой байт туда пропиши.

ты сомневаешься, что мой парсер TPitXMLDocument сможет спокойно разобрать такой документ с нулевым байтом?


 
kilkennycat ©   (2012-10-15 22:40) [86]


> icelex ©   (15.10.12 22:32) [84]

вот, блин, век живи, век учись...а я-то все думаю, че трусы такие узкие, летом еще ниче, а как шубу надеваю, то все...


 
Ega23 ©   (2012-10-15 22:43) [87]


> ты сомневаешься, что мой парсер TPitXMLDocument сможет спокойно
> разобрать такой документ с нулевым байтом?

сможет. Но это не будет текстом. :)


 
Rouse_ ©   (2012-10-15 22:47) [88]


> Пит   (15.10.12 22:38) [85]
> читай ветку с самого начала )

Обычно я так и делаю, поэтому не понимаю смысла твоего спича...


 
Юрий Зотов ©   (2012-10-15 22:50) [89]


> QAZ2   (15.10.12 11:53) [9]
>
> > Более-менее универсальный формат для обмена данными.
>
> это былобы так, еслибы файл созданный в одной программе
> открывался также в совершенно другой программе
> но я почему то таких чудес не встречал :)

Странно. А я встречал. И даже сам делал. И даже далеко не раз.

XML-файлы, созданные моими программами без малейших проблем открываются совершенно другими программами, не мною сделанными. И наоборот - тоже без малейших проблем. Например, в текущем проекте так реализован обмен данными с 1С, и не только.

Наверное, я то-то не так делаю?


 
DVM ©   (2012-10-15 22:54) [90]


> QAZ2

приведу один пример использования XML, где его трудно заменить чем либо еще - веб службы и SOAP. Интерфейс службы описывает сам себя, не надо писать ни строчки кода, чтобы создать иерархию классов для работы со службой используя  wsdl файл-описатель службы. Служба может иметь сотни методов с сотнями типов данных и все это будет автоматически проверяться с использованием схемы. XML с помощью трансформаций легко превратить во что угодно, хошь в таблицу на html хошь в SQL запрос или еще во что. И так далее и тому подобное.


 
pit   (2012-10-16 00:24) [91]

>сможет

Ну вот, по твоей логике и выходит тогда что xml это не обязательно текст


 
antonn ©   (2012-10-16 00:30) [92]


> INI-файл проблему, конечно, решил в данном случае?

да, решил


> icelex ©   (15.10.12 21:32) [74]
>
>
> > Андреевич   (15.10.12 19:34) [64]
> > Еще больше возненавидел xml после того как парсер (XmlSerializer
> > в шарпе) отказался десерилизовать структуру потому что
> структура
> > текста с XML была вручную немного подредактирована (с
> косяками).
> >  И все - это не валидный формат, не буду грузить.
>
> а xml-то тут причем?

xml+"очень много удобных готовых парсеров".
проблема в том, что некоторые "недалекие" "требователи" хотят следовать моде и конфигурационные файлы хотят видеть в xml, потому что "ini устарел".


 
antonn ©   (2012-10-16 00:32) [93]

а еще часто люди путают "открыть xml" и "использовать xml".
"открыть" я и в блокноте смогу


 
han_malign   (2012-10-16 08:46) [94]


> Можно и в бинарных файлах все хранить

- ASN.1 описывает в том числе и XER (XML encoding rules), но в транспортных протоколах обычно используют более компактные DER(BER) или PER кодирование... Так же как Web-разработчики предпочитают более компактный JSON. Это всего лишь выбор представления данных...
Но основным преимуществом XML является то, что он содержит не только структуру данных, но и полное описание этой структуры(в том числе в ссылках на версию схемы(атрибуты "xmlns[:(xsi|xsd)]")), тогда как все остальные представления подразумевают известную фиксированную(в той или иной мере) структуру внешнего объекта связывания...


> > Есть но хреново работает :)
> О блин, не знал...  :)

- дык, оно там только в одном месте и используется - при RecreateWnd, когда стиль "времени создания" меняется...


 
icelex ©   (2012-10-16 08:52) [95]


> antonn ©   (16.10.12 00:30) [92]
> потому что "ini устарел".

ну пересохрани файл, покажи дату создания и скажи, что он еще "совсем свежий"


 
jack128_   (2012-10-16 09:31) [96]


> INI это еще один из стандартных формато

кем стандартизирован?  А еще лучше - номер стандарта. AFAIR - ini-файл - это изобретение MS, которое им уже не поддерживается, функции для работы с ним только для обратной совместимости есть.


 
TUser ©   (2012-10-16 09:52) [97]


> QAZ2   (15.10.12 21:42) [77]
>
> > Чем INI лучше?
>
> незнай я им не пользуюсь :)
> я вообще не понимаю форматов "которыемогутчитатьсячеловеком"
> ибо каждый ботан будет пытаться его изменить и поглядеть
> что из этого будет
>
>

И regedit тоже зло.


 
Palladin ©   (2012-10-16 09:58) [98]

json rulez foreva


 
DVM ©   (2012-10-16 10:08) [99]


> han_malign   (16.10.12 08:46) [94]
>
> > Можно и в бинарных файлах все хранить
>
> - ASN.1 описывает в том числе и XER (XML encoding rules),
>  но в транспортных протоколах обычно используют более компактные
> DER(BER) или PER кодирование..

С этим ASN1 мороки больно много. Начиная от поиска библиотек для работы с ним, заканчивая ошибкой в RFC, благодаря которой сейчас существует фактически 2 стандарта. Мудреный метод кодирования не позволяет вручную найти ошибку в бинарных данных которые парсер не может распарсить. Мне не понравился короче.


 
Ega23 ©   (2012-10-16 10:43) [100]

I"ve trolled XML fans by arguing that representing XML in text is a hack; it should really be represented in XML


 
han_malign   (2012-10-16 11:19) [101]


> С этим ASN1 мороки больно много. Начиная от поиска библиотек для работы с ним

- оно изначально заточено под автоматические ASN1-to-C(++) трансляторы...

> Мудреный метод кодирования не позволяет вручную найти ошибку в бинарных данных

- ну это PER, который еще и с вариациями(например, с выравниванием на октет тэгов и длин составных классов, или без), и разобрать таки можно, если помнить про маски опциональных полей и расширений...
А DER(строгий BER)(например X.509 сертификаты) - прост как валенок...

Нравится - не нравится, а существует огромное семейство сетевых протоколов на ASN.1(H.323 например) - и никуда уже не денешься...


 
QAZ2   (2012-10-16 12:28) [102]


> jack128_   (16.10.12 09:31) [96]

он используется везде и не только в винде, в линуксе например :)
а отсутствие поддержки - это когда вообще не работает, а не оставленно для совместимости
а дабы тебе было известно, в дельфе используется свой код для работы с ini и кагбэ пофиг чего там поддерживается или нет самой виндой

> Юрий Зотов ©   (15.10.12 22:50) [89]

это происходит потомы что ты генерируеш XML спецально заточенный под 1С и ясен перец егоже можеш и сам прочитать
но ты же не станеш утверждать что 1С или твоя программа без проблем схавает абсолютно любой XML также как и та программа под которую он составлен ?

> DVM ©   (15.10.12 22:54) [90]

очень абстрактно и непонятно...
все эти чудеса происходят сами собой? или всетаки нужно покодить пару сотен строчек и прицепить либу на 100 мегабайт?


 
Ega23 ©   (2012-10-16 12:35) [103]


>  в дельфе используется свой код для работы с ini и кагбэ
> пофиг чего там поддерживается или нет самой виндой

Бгггггггг   :)))


 
QAZ2   (2012-10-16 12:42) [104]

бгг что?


 
DVM ©   (2012-10-16 12:50) [105]


> QAZ2   (16.10.12 12:28) [102]


> очень абстрактно и непонятно...
> все эти чудеса происходят сами собой? или всетаки нужно
> покодить пару сотен строчек и прицепить либу на 100 мегабайт?
>

Эти чудеса происходят благодаря библиотекам для работы с XML, таким как msxml.
Код писать в любом случае придется, но не придется кодировать тупую рутину такую как сотни классов с десятками методов и сотни типов и реализовывать методы сереализации/десереализации полей в/из XML. Удобно же, мастер сам все сделает. Проверка корректности входных/выходных данных с выводом сообщения об ошибке может быть так же автоматизирована путем использования XML схемы, в противном случае это потребовало бы кучу усилий.

Я вообще не большой любитель XML (для продвижения XML тут на форуме есть специально обученные евангелисты XML), но есть ситуации где он очень удобен и где его сложно заменить. JSON тот же заметно уступает по гибкости XML.


 
Пит   (2012-10-16 13:16) [106]

автор слишком жирный тролль.

Специально игнорирует вменяемые ответы, специально акцентирует внимание на том, о чем можно пофлудить. А значит цель не получений знаний, а исключительно флуд. Так не интересно)


 
Лукошко   (2012-10-16 13:27) [107]


> Пит   (16.10.12 13:16) [106]

106 ответов - вот это да "не интересно"!
:o)


 
имя   (2012-10-16 13:28) [108]

Удалено модератором


 
asail ©   (2012-10-16 14:29) [109]


> QAZ2   (16.10.12 12:28) [102]

> это происходит потомы что ты генерируеш XML спецально заточенный
> под 1С и ясен перец егоже можеш и сам прочитать

Это происходит потому, что сгенеренный XML соответствует соответствующему XSD.

> но ты же не станеш утверждать что 1С или твоя программа
> без проблем схавает абсолютно любой XML также как и та программа
> под которую он составлен ?

Я стану. При условии, что этот абсолютно любой XML соответствует XSD.

Более того, мне интересно - INI-файл в этом плане по-твоему лучше? Чем?


 
Игорь Шевченко ©   (2012-10-16 14:35) [110]

don"t feed the troll


 
имя   (2012-10-16 14:46) [111]

Удалено модератором


 
Андреевич   (2012-10-16 14:46) [112]


> ini-файл - это изобретение MS, которое им уже не поддерживается

вот что хорошо - формату ini глубоко пофиг что МС его не использует (а не "поддерживает"), он все так же используется другими приложениями :)


 
Андреевич   (2012-10-16 14:48) [113]


> Более того, мне интересно - INI-файл в этом плане по-твоему
> лучше? Чем?

ini может занимать меньше памяти и быстрее парсится (чем xml хранящий ту же информацию)


 
QAZ4   (2012-10-16 14:51) [114]


> XSD

жесть, все запущенней чем я предпологал
описание описания :)
может есть еще какойнибуть формат описания структуры XSD ?
для пущей надежности и универсальности


 
QAZ4   (2012-10-16 14:55) [115]


> Андреевич   (16.10.12 14:48) [113]

сейчас тебе ответят про гигагерцы и гигабайты...


 
Rouse_ ©   (2012-10-16 15:02) [116]


> Игорь Шевченко ©   (16.10.12 14:35) [110]
> don"t feed the troll

Да, действительно, нефиг...
Закрываемся.



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

Текущий архив: 2013.03.22;
Скачать: CL | DM;

Наверх




Память: 0.8 MB
Время: 0.058 c
2-1341682015
Jonis_84
2012-07-07 21:26
2013.03.22
проверка соединения


15-1349184464
Roman_man
2012-10-02 17:27
2013.03.22
Реакция на мышь в не формы


15-1352665803
Юрий
2012-11-12 00:30
2013.03.22
С днем рождения ! 12 ноября 2012 понедельник


2-1330616538
>|<
2012-03-01 19:42
2013.03.22
Ошибка перемещения файла


1-1304237779
AlekVolsk
2011-05-01 12:16
2013.03.22
Экспорт в Excel2010: значения NumberFormat ячейки