Как перевести html в xml

Преобразовать html в xml

Необходимо преобразовать html в xml, как это можно сделать??

Заранее благодарен за помощь.

Как преобразовать данные из HTML-файла в XML?
Всем привет я только начал изучать c# и дали задание и я не до конца понял что мне нужно.

Как перевести html в xmlПреобразовать xml в html
Всем привет. столкнулся с проблемой преобразования xml в html с помощью xslt. Из 20

Вложения

Как перевести html в xmlhtml2xml.rar (59.5 Кб, 27 просмотров)

Решение

Решение

куда именно. а как сохранить в хмл.

Console.ReadKey();
ПУСТОЙ ЭКРАН

Решение

Решение

Я не знаю, как ты там до этого менял код. Скачай проект, который я оставил раньше и посмотри.

Добавлено через 56 секунд

МОЙ VS2010 не может открыть

Добавлено через 1 минуту
Элемент «doc» не существует в текущем контексте.

Решение

Как перевести html в xmlпреобразовать Xml
День добрый! Подскажите возможно ли преобразовать xml в следующий вид.

Преобразовать xml разметку в картинку
Искал честно не нашел. Есть xml разметка с кучей TextView. Можно ли как то преобразовать это все.

Преобразовать дату из XML в метку времени
Есть такой формат даты: Wed, 27 Apr 2016 20:24:05 +0300 Надо получить что-то вроде такого.

как можно преобразовать объект в xml
Есть функция simplexml_load_file() для преобразования xml в объект, по объекту я прошелся данные.

Загрузить XML файл и преобразовать его в объект
Подскажите, как можно загрузить xml файл и преобразовать в объект? Вот этот файл.

Источник

Converting HTML to XML

I have got hundereds of HTML files that need to be conveted in XML. We are using these HTML to serve contents for applications but now we have to serve these contents as XML.

HTML files are contains, tables, div’s, image’s, p’s, b or strong tags, etc..

I googled and found some applications but i couldn’t achive yet.

Could you suggest a way to convert these file contents to XML?

Как перевести html в xml

3 Answers 3

gave an xml file, which I was able to process with xslt processor. However I needed to set up xhtml1 dtds correctly.

This is their homepage: html-tidy.org (and the legacy one: HTML Tidy)

I did found a way to convert (even bad) html into well formed XML. I started to base this on the DOM loadHTML function. However during time several issues occurred and I optimized and added patches to correct side effects.

Now this also allows to add more html pieces into one XML which I needed to use myself. In general it can be used like this:

‘ will nicely be outputed in well formed XML as ‘

‘. The info root tag is added as it will also allow to convert ‘

‘ which is not XML as it has not one root element. However if you html does for sure have one root element then the extra root tag can be skipped.

With this I’m getting real nice XML out of unstructured and even corrupted HTML!

I hope it’s a bit clear and might contribute to other people to use it.

Источник

Основы XML. Преобразование XML-HTML. Использование JavaScript

Знакомство с технологией XML. Изучение возможности представления документов XML в HTML. Использование скриптов JavaScript для навигации по таблице XML и организации поиска данных по условию. Рекомендуемая литература [4, 13, 16].

Краткие теоретические сведения

Технология XML (eXtensible Markup Language) была создана в конце 90-х годов прошлого столетия. Основные достоинства текста XML:

□ имеет структуру базы данных, доступен ЭВМ и человеку;

□ удобно обрабатывается средствами современных языков программирования;

□ легко переводится в HTML.

Рассмотрим следующий пример текстовой базы данных, написанной на XML:

Three men in the boat

Notre Domme de Paris

Angelika — the misstress of ghosts А and S. Gallen

Three men in the boat.

Наберите этот текст в любом редакторе и сохраните его как простой текстовый файл с расширением xml — например, дайте этому файлу имя textbd.xml. Можно просмотреть этот файл браузером Internet Explorer так же, как вы просматривали HTML-файлы. В случае ошибки интерпретатор XML выдаст подробную информацию о дислокации и сути ошибки.

Теперь покажем, как перевести этот вывод в табличную форму HTML, что выполняется средствами HTML. Создадим следующий файл HTML (листинг 2.12).

Листинг 2.12. HTML-документ для отображения таблицы XML

Our first lesson in xml-technology

Сохраним этот HTML-файл под именем textbd.html. Теперь откроем его браузером. Результат будет таким (рис. 2.9).

Как перевести html в xml

Рис. 2.9. Отображение документа XML в документе HTML

Для подключения созданного ранее XML-файла и связывания его с таблицей используются теги:

Для отображения данных в таблице используются теги для ячеек в следующем виде:

Тег используется в качестве контейнера. Параметр DATAFLD содержит значение отображаемого элемента XML.

Листинг2.13. Модифицированный HTML-документ для отображения таблицы XML

Our first lesson in xml-technology

Терм &gt используется для прорисовки стрелки вправо, терм &it — стрелки влево. При этом указываем, что нужно отображать только две записи в таблице:

Теперь создадим для нашего сайта функциональное наполнение. Его смысл будет заключаться в том, что будем вводить название книги целиком или какие-то его фрагменты, и по нажатию кнопки система должна выдавать другие реквизиты книги: автора и цену либо сообщать, что книга не найдена. Теперь понадобится привлечь JavaScript. Собственно потребуется всего несколько команд.

Эта команда возвращает общее число элементов из ХМ L-документа.

Теперь приведем расширенный HTML-код для этой задачи (листинг 2.14).

Листинг2.14. Расширенный HTML-документ для отображения таблицы XML

Источник

Как перевести html в xml

8. Лекция: Отображение XML-документов с использованием связывания данных

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

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

Связывание данных, как и другие методы, о которых вы узнаете в этой лекции, работает только с XML-документом, который симметрично структурирован, например, как базы данных, – а именно, элементы документа могут быть интерпретированы как набор записей и полей. В простейшем случае такой документ состоит из корневого элемента, содержащего множество элементов одинакового типа (записи), каждый из которых имеет одинаковый набор дочерних элементов, все из которых содержат символьные данные (поля). В качестве примера можно привести документ Inventory.xml, который представлен в Листинге 8.1. Элементы BOOK этого документа могут быть интерпретированы как записи, а элементы, вложенные в каждый элемент BOOK (TITLE, AUTHOR и т.д.), могут быть интерпретированы как поля. Далее в этой лекции вы подробнее узнаете о специфических структурах документа, которые подходят для связывания данных. Если структура документа такова, что не допускает связывание данных, можно использовать метод создания сценариев, о котором пойдет речь в лекции 9.

В этой лекции вы прежде всего получите сведения о двух основных шагах при связывании данных. Затем вы узнаете в подробностях, как привязать XML-документ к HTML-странице (первый основной шаг) и как сцеплять элементы HTML с элементами XML (второй основной шаг). Наконец, вы узнаете, как программировать Web-страницу с помощью сценариев, которые используют в качестве базового объекта программирования связанные данные (а именно, Data Source Object, или DSO). Вы можете применять эти сценарии совместно со связыванием данных – либо независимо.

В лекции 9 вы познакомитесь с совершенно иным способом для доступа управления и отображения XML-документа с HTML-страницей. Этот метод вы можете использовать для XML-документов любого типа, независимо от вида его логической структуры.

Основные шаги

Вот два основных этапа при связывании данных:

Установка связи XML-документа с HTML-страницей, на которой вы хотите отобразить данные XML. Этот шаг обычно реализуется включением HTML элемента с именем XML в HTML-страницу. Например, следующий элемент на HTML-странице связывает XML-документ Book.xml со страницей:

Сцепление HTML элементов с XML-элементами. Когда вы сцепляете HTML элементы с XML-элементом, HTML-элемент автоматически отображает содержимое XML-элемента. Например, следующий элемент SPAN на HTML-странице сцеплен с элементом AUTHOR связанного XML-документа:

В результате HTML-элемент SPAN отображает содержимое XML-элемента AUTHOR.

Базовая технология связывания данных в действительности столь же проста, как в этом примере, хотя в дальнейшем вы познакомитесь с различными вариациями и способами использования этой технологии.

Шаг первый: установка связи XML-документа с HTML страницей

Чтобы отобразить XML-документ на HTML странице, вы должны установить его связь со страницей. Самый простой путь сделать это в Microsoft Internet Explorer – включить в страницу HTML-элемент с именем XML, так называемый фрагмент данных. Вы можете использовать одну из двух различных форм записи для фрагмента данных.

В первой форме весь текст XML-документа помещается между начальным и конечным тегами XML. Вот пример фрагмента данных на следующей HTML-странице:

Во второй форме записи HTML-элемент с именем XML остается пустым и содержит только URL XML-документа. Вот пример фрагмента данных на HTML-странице:

В предыдущем примере текст XML-документа должен содержаться в отдельном файле Book.xml:

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

Примечание. Имейте в виду, что элемент с именем XML, используемый для создания фрагмента данных, не является собственно XML-элементом. Это просто HTML-элемент, который содержит XML-элементы. Следовательно, использование синтаксиса XML для пустого элемента,

Чаще, однако, вы используете частичный URL, который задает местонахождение относительно местонахождения HTML-страницы, содержащей фрагмент данных. Например, атрибут SRC в следующем фрагменте данных указывает, что файл Book.xml находится в той же папке, что и HTML-страница:

Относительные URL более распространены, потому что XML-документ обычно содержится в той же папке, что и HTML-страница, либо в одной из вложенных папок.

Как хранятся данные XML

Когда Internet Explorer открывает HTML-страницу, его встроенный XML-процессор синтаксически анализирует XML-документ. Internet Explorer также создает программный объект, который носит название Объект исходных данных (Data Source Object DSO), который хранит данные XML и обеспечивает доступ к этим данным. DSO хранит данные XML как набор записей – т.е. множество записей и их полей. Например, если вы включите документ Inventory.xml (см. Листинг 8.1) в страницу как фрагмент данных, DSO будет хранить каждый элемент BOOK как запись, а каждый дочерний элемент внутри BOOK (TITLE, AUTHOR и т.д.) как поле.

Когда вы сцепляете HTML-элемент с XML-элементом, DSO автоматически предоставляет значение XML-элемента и управляет всеми его свойствами. DSO также позволяет вам напрямую осуществлять доступ и манипулирование имеющимся набором записей посредством ряда методов, свойств и событий. Методы представляют собой функции, которые вы можете вызывать со страницы для доступа или модификации набора записей. (Например, вы можете использовать методы для перемещения между записями.) Свойства представляют собой установленные на данный момент параметры, которые вы можете считывать и в ряде случаев изменять со страницы. (Например, вы можете считать свойство, которое сообщает вам, достигли ли вы последней записи.) События представляют собой определенные смены состояний (например, изменение значений записи), которыми вы можете управлять посредством функции сценария, который вы создаете для страницы.

На странице идентификатор, который вы присваиваете атрибуту ID во фрагменте данных, представляет DSO. (В предыдущем разделе в рассмотренном примере таким идентификатором является dsoBook.)

Проверка на наличие ошибок XML

Когда вы открываете XML-документ (автономный или с таблицей стилей) непосредственно в Internet Explorer, браузер проверяет, является ли документ корректно сформированным. Если он обнаруживает ошибки, то приостанавливает отображение документа и выводит сообщение о фатальной ошибке, которое помогает вам выявить ошибку и устранить ее.

Если вы открываете XML-документ через фрагмент данных на HTML-странице, Internet Explorer проверяет, является ли документ корректно сформированным, а также – если документ включает объявление типа документа – является ли он валидным. Однако в том случае, если документ содержит ошибку, Internet Explorer просто не будет отображать данные XML, не выводя сообщение об ошибке.

Чтобы увидеть описание какой-либо ошибки, имеющейся в связанном XML-документе, вы можете протестировать документ с использованием сценариев проверки на корректность и валидность, представленных в разделе «Проверка валидности XML-документа» в лекции 9.

Шаг второй: сцепление HTML-элементов с XML-элементами

Вы можете осуществлять сцепление HTML-элементов с XML-элементами двумя основными способами.

Использование табличного сцепления данных

Самый простой способ отобразить XML-документ, который состоит из группы записей (такой как Inventory.xml, представленный в Листинге 8.1), – это сцепить HTML-элемент TABLE с данными XML таким образом, чтобы в таблице автоматически отображались сразу все записи (или одна страница записей за раз, если вы установили режим постраничного отображения). При таком подходе Internet Explorer берет на себя большую часть работы; вам не нужно писать сценарии или вызывать методы (функции). (Одно исключение состоит в том, что если вы выбрали режим пролистывания, вам потребуется включить несколько вызовов простых функций, о чем пойдет речь далее в этой лекции.)

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

Использование одной HTML-таблицы для отображения простого набора записей

Вы можете использовать один HTML-элемент TABLE для отображения XML-документа, в котором данные организованы в виде простого набора записей – т.е. XML-документа, составленного следующим образом:

корневой элемент содержит множество элементов типа запись (record) (в этой лекции подобные элементы иногда называются просто записями);

каждый элемент типа запись содержит одинаковый набор элементов типа поле (field) (в этой лекции подобные элементы иногда называются просто полями);

каждый элемент типа поле содержит только символьные данные. (Если дочерний элемент элемента запись содержит один или несколько своих собственных дочерних элементов, DSO интерпретирует его как вложенную запись, а не как поле. О том, как отображать вложенные поля, вы узнаете в разделе «Использование вложенных таблиц для отображения иерархической структуры записей» далее в этой лекции.)

Примером такого типа XML-документов является документ Inventory.xml, который вы использовали в предыдущих лекциях. Он представлен в Листинге 8.1. В этом документе корневой элемент (INVENTORY) содержит набор из восьми элементов-записей (элементы BOOK), и каждый из элементов-записей имеет одинаковый набор элементов-полей, которые содержат только символьные данные (TITLE, AUTHOR, BINDING, PAGES, PRICE).

Листинг 8.1. Inventory.xml

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

В качестве примера возьмем HTML-страницу из Листинга 8.2, которая содержит таблицу, сцепленную с данными документа Inventory.xml из Листинга 8.1.

Листинг 8.2. Inventory Table.htm

XML-документ из Листинга 8.1 связан с HTML-страницей из Листинга 8.2 посредством фрагмента данных на этой странице, имеющего ID dsoInventory:

Элемент TABLE страницы сцеплен со всем XML-документом путем присвоения атрибуту DATASRC элемента идентификатора (ID) фрагмента данных, предваренного символом #:

Таблица определена со стандартным заголовком (элемент THEAD) и с одной строкой (элемент TR). Каждая ячейка в этой строке (т.е., каждый элемент TD) состоит из элемента SPAN, который сцеплен с одним из полей XML-документа таким образом, что этот элемент отображает содержимое поля. Например, первая ячейка содержит элемент SPAN, сцепленный с полем TITLE:

Элемент SPAN связывается с полем XML путем присвоения имени поля (в данном примере TITLE) атрибуту DATAFLD элемента.

Вот как работает связывание данных: даже если в элементе TABLE определена только одна строка, когда браузер отображает таблицу, он повторяет строковый элемент для каждой записи в XML-документе. Т.е., в первой строке, следующей за заголовком, отображены поля (TITLE, AUTHOR и т.д.), принадлежащие первой записи (элемент BOOK для книги Adventures of Huckleberry Finn). В следующей строке отображены поля для второй записи (элемент BOOK для книги Leaves of Grass) и т.д. На рисунке 8.1 показано как выглядит документ в Internet Explorer.

У вас может возникнуть вопрос, почему ячейки (элементы TD) не сцеплены непосредственно с полями XML. Ответ заключается в том, что элемент TD не является связываемым HTML-элементом. (Связываемые элементы перечислены в таблице 8.3 в разделе «Другие способы связывания данных».) Следовательно, вы должны включить внутрь каждого элемента TD связываемый элемент (обычно SPAN).

Ссылка. Чтобы получить информацию о том, как работает HTML и динамический HTML (DHTML) применительно к Internet Explorer, посетите следующий Web-сайт MSDN: http://msdn.microsoft.com/workshop/author/default.asp. Чтобы познакомиться с официальной спецификацией HTML, обратитесь к Web-сайту консорциума W3C по адресу http://www.w3.org/TR/REC-html40/.

Использование постраничного отображения

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

Установите для атрибута DATAPAGESIZE сцепленного элемента TABLE значение, равное максимальному числу записей, которые вы хотите отобразить за раз. Каждая страница записей будет содержать заданное вами число записей. Например, следующий начальный тег для элемента TABLE присваивает число «5» атрибуту DATAPAGESIZE, в результате чего в таблице будет отображено пять записей за раз:

Присвойте уникальный идентификатор атрибуту ID элемента TABLE, как для следующего начального тега:

Чтобы перемещаться между записями, вызывайте методы элемента TABLE, приведенные в таблице 8.1. Для приведенных в последнем столбце примеров предполагается, что таблица имеет идентификатор InventoryTable.

Источник

Прямая и обратная обработка XML

Иногда возникает необходимость в обработке XML и в последующей конвертации в древо DOM. Или наоборот, необходимо перевести древо DOM в XML. В этой статье рассмотрим объекты платформы web для обработки XML.

XMLSerializer Сериализует деревья DOM, преобразуя их в строки, содержащие XML. DOMParser Создаёт дерево DOM, анализируя строку, содержащую XML, возвращая XMLDocument (en-US) или Document в зависимости от входящих данных. XMLHttpRequest Загружает контент из URL-адреса; Содержимое XML возвращается как объект XML Document с деревом DOM, построенным из самого XML. XPath Технология создания строк, содержащих адреса для определённых частей документа XML, и поиска узлов XML на основе этих адресов.

Создание XML-документа

Parsing строк в дерево DOM

В этом примере фрагмент XML в строке преобразуется в дерево DOM с помощью DOMParser :

Parsing URL-addressable ресурсов в дерево DOM

Использование XMLHttpRequest

Вот пример кода, который считывает и анализирует XML-файл с URL-адресом в дереве DOM:

Сериализация XML-документа

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

Serializing DOM trees to strings

Чтобы сериализовать документ дерева DOM в текст XML, вызовите XMLSerializer.serializeToString () :

Serializing HTML documents

Вы можете получить HTML, соответствующий и его потомкам, с помощью этого кода:

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *