![]() |
![]() |
|
XML: есть у кого малюсенький примерчик работы с хмл? | ☑ | ||
---|---|---|---|---|
0
Obed
28.02.05
✎
13:45
|
сабж
|
|||
1
Dies
28.02.05
✎
13:51
|
Ну есть, а чем он тебе поможет?
|
|||
2
Asmody
28.02.05
✎
13:52
|
малюсенький примерчик:
Процедура Сформировать() objDom=СоздатьОбъект("MSXML.DOMDocument"); objRootElem = objDom.createElement("Корень"); objDom.appendChild(objRootElem); // Creates Member element objMemberElem = objDom.createElement("Элемент"); objRootElem.appendChild(objMemberElem); // Creates Attribute to the Member Element objMemberRel = objDom.createAttribute("Атрибут"); objMemberRel.nodeValue = "Значение узла"; objMemberElem.setAttributeNode(objMemberRel); // Create element under Member element, and // gives value "some guy" objMemberName = objDom.createElement("Элемент"); objMemberElem.appendChild(objMemberName); objMemberName.Text = "Текст элемента"; // Saves XML data to disk. objDom.save("c:\fignja.xml"); КонецПроцедуры // Сформировать |
|||
3
ТИПОВАЯ КОНФА
28.02.05
✎
13:53
|
Во мне навалом этого добра.
|
|||
4
Obed
28.02.05
✎
13:53
|
(1) Не разу в жизни не использовал ХМЛ, хочу хоть в чем-нибудь разобраться
|
|||
5
Obed
28.02.05
✎
13:54
|
(3) Там черт ногу сломит, мне чего-нить попроще бы
|
|||
6
Obed
28.02.05
✎
13:54
|
(2) Thanks. Это типа выгрузить. А загрузить?
|
|||
7
Asmody
28.02.05
✎
13:59
|
||||
8
OFF
28.02.05
✎
14:01
|
Как это про фигвам забыли?
http://chin.dataltd.ru/index2.php?id=1c_xml |
|||
9
Asmody
28.02.05
✎
14:06
|
(8) пасиб за ссылку! помню, что видел где-то, а где и кого - забыл.
|
|||
10
OFF
28.02.05
✎
14:07
|
заходите еще :)
|
|||
11
Obed
28.02.05
✎
14:12
|
Всем спасибо, будем разбираться
|
|||
12
fixin
28.02.05
✎
14:20
|
Юзайте на здоровье (вот вам библиотека и пример)
Функция DOMДокумент(Узел) ДОМ=Узел.ownerDocument; Если ДОМ=Неопределено Тогда ДОМ=Узел; КонецЕсли; Возврат ДОМ; КонецФункции Функция DOMКорень(Дом) Возврат Дом.DocumentElement; КонецФункции Функция DOMДобавитьУзел(УзелРодитель, Имя) XMLDOMNode =DOMДокумент(УзелРодитель).createElement(Имя); УзелРодитель.appendChild(XMLDOMNode); Возврат XMLDOMNode; КонецФункции Функция DOMДети(Узел) Перем Рез; Рез=Новый Массив(); Для Инд=0 По Узел.ChildNodes().Length-1 Цикл Рез.Добавить(Узел.ChildNodes(Инд)); КонецЦикла; Возврат Рез; КонецФункции Процедура DOMУстановитьАтрибут(Узел, Имя, Значение) Узел.setAttribute(Имя, Значение); КонецПроцедуры Процедура DOMУстановитьТекст(Узел, Текст) Узел.Text=Текст; КонецПроцедуры Функция DOMУзелАтрибут(Узел, Имя) Возврат Узел.GetAttribute(Имя); КонецФункции Функция DOMУзелИмя(Узел) Возврат Узел.baseName; КонецФункции Функция DOMПолучитьУзел(Узел, Имя, Массив=ложь) Перем Рез; Рез=Новый Массив(); ДОМ=DOMДокумент(Узел); ДОМ.SetProperty("SelectionLanguage","XPath"); //Узлы = Узел.SelectNodes("//*[name()='"+Имя+"']"); Узлы = Узел.SelectNodes(Имя); Для Инд=0 По Узлы.Length-1 Цикл Если Массив=ложь Тогда Возврат Узлы.item(Инд); КонецЕсли; Рез.Добавить(Узлы.item(Инд)); КонецЦикла; Если Массив=Ложь Тогда Возврат Неопределено; КонецЕсли; Возврат Рез; КонецФункции Функция DOMУзелТекст(Узел) Возврат Узел.Text; КонецФункции Функция DOMУстановитьКодировку(ДОМ, Кодировка) pi = ДОМ.createProcessingInstruction("xml", " version='1.0' encoding='"+Кодировка+"'"); ДОМ.appendChild(pi); КонецФункции Функция НастройкаФайлЗагрузить(ИмяФайла) Перем Дом; Дом=DOMСоздатьОбъект(); Дом.Load(ИмяФайла); УзКорень=DOMКорень(Дом); УзНастройки=DOMПолучитьУзел(УзКорень,"Settings"); НастройкаЗагрузить(УзНастройки); КонецФункции Функция НастройкаФайлСохранить(ИмяФайла) Перем Дом; Дом=XMLФайлСоздать(ИмяФайла); УзКорень=DOMКорень(Дом); УзНастройки=DOMДобавитьУзел(УзКорень,"Settings"); НастройкаСохранить(УзНастройки); XMLФайлСохранить(Дом, ИмяФайла); КонецФункции Функция НастройкаСохранить(УзНастройки) УзСобытия=DOMДобавитьУзел(УзНастройки,"Events"); Для Каждого ТСтр Из ТКодНастройки Цикл УзСобытие=DOMДобавитьУзел(УзСобытия, "Event"); Событие=ТСтр.Событие; КодСобытия=ТСтр.КодСобытия; DOMУстановитьАтрибут(УзСобытие,"Name", Событие); DOMУстановитьТекст(УзСобытие, КодСобытия); КонецЦикла; КонецФункции Функция НастройкаЗагрузить(УзНастройки) //Считываем из узла УзСобытия=DOMПолучитьУзел(УзНастройки,"Events"); Для Каждого УзСобытие Из DOMДети(УзСобытия) Цикл //УзСобытие=DOMПолучитьУзел(УзСобытия, "Event"); Событие=DOMУзелАтрибут(УзСобытие, "Name"); КодСобытия=DOMУзелТекст(УзСобытие); АлгоритмОбработкаСобытияДобавить(Событие, КодСобытия); КонецЦикла; КонецФункции |
|||
13
fixin
28.02.05
✎
14:21
|
Ой, это я для 8-ки, но для 7-ки можно библиотеку переписать, хотя там есть своя v7plus.dll.. :)
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |