forundex.ru

 

Начальная

Windows Commander

Far
WinNavigator
Frigate
Norton Commander
WinNC
Dos Navigator
Servant Salamander
Turbo Browser

Winamp, Skins, Plugins
Необходимые Утилиты
Текстовые редакторы
Юмор

File managers and best utilites

Открываю XML в браузере и выходит пустая белая страница - XML/XSL. Xml отображение в браузере


Визуализация Xml-документов / Хабрахабр

Думаю, для многих не секрет, что xml является достаточно удобным способом хранения и передачи информации. Вот уже который раз натыкаюсь в литературе на утверждение, что в будущем xml должен заменить html, а появление xhtml является тому подтверждением. Но тут есть нюанс. все браузеры знают как отображать html-документы, но ни один из них не знает, как должны отображаться xml-документы. Это связано прежде всего с тем, что формируя xml-документ Вы можете ввести свои теги. Я хочу коротко (это очень большая тема, на самом деле) рассказать о так называемых «Таблицах преобразований xml-документов». Думаю, что многие наверняка знакомы с ними, но надеюсь что кому-то это может быть полезно, а, учитывая мою любовь к практике, хочу показать всё на очень простом примере
Что мы имеем
Рассмотрим простенький xml-документ:
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <document>
  3.  <header>Это заголовок Xml-документа</header>
  4.  <items>
  5.   <item>
  6.    <name>Habrahabr.ru</name>
  7.    <description>
  8.     В Хабрахабр заложена модель совместного творчества людей. Это
  9.     универсальное средство для всех представителей нового поколения
  10.     средств массовой информации.
  11.    </description>
  12.   </item>
  13.   <item>
  14.    <name>Bash.org.ru</name>
  15.    <description>
  16.     Вы добавляете цитату. После этого цитата попадает в Бездну, где
  17.     ее могут увидеть и проголосовать за нее наши посетители, читающие
  18.     сей суровый раздел.
  19.    </description>
  20.   </item>
  21.  </items>
  22. </document>
Если мы попробуем просмотреть его в браузере, то увидим нечто подобное:

Существует несколько способов визуализировать содержимое этого документа. К нему можно подключить обычную таблицу стилей (css-файл) или таблицу преобразований. Таблица преобразований представляет из себя xml-документ, оформленный по определённым правилам и имеющий расширение .xslt.

Допустим нам нужно отобразить информацию, содержащуюся в xml-документе, для этого создадим таблицу преобразований (файл будет называться style.xslt):

  1. <?xml version="1.0" encoding="utf-8"?>
  2. <xsl:stylesheet version="1.0"
  3. xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
  4. xmlns:msxsl="urn:schemas-microsoft-com:xslt"
  5. exclude-result-prefixes="msxsl">
  6.  
  7.  <xsl:template match="document">
  8.   <html>
  9.    <head><title><xsl:value-of select="header" /></title></head>
  10.    <body><xsl:apply-templates select="items" /></body>
  11.   </html>
  12.  </xsl:template>
  13.  
  14.  <xsl:template match="items">
  15.   <ul><xsl:apply-templates select="item" /></ul>
  16.  </xsl:template>
  17.  
  18.  <xsl:template match="item">
  19.   <li><a>
  20.     <xsl:attribute name="href">
  21.      http:// <xsl:value-of select="name"/>
  22.     </xsl:attribute>
  23.     <xsl:value-of select="name"/>
  24.    </a> - <xsl:value-of select="description"/>
  25. <li> </xsl:template>
  26.  
  27. </xsl:stylesheet>
Подключить таблицу преобразований (к исходному xml-документу конечно же) можно следующим образом: В итоге, открыв тот же самый файл в браузере мы увидим следующее:

В двух словах, как это работает
В таблице преобразований описаны три шаблона: document, items и item. Когда в шаблоне встречается элемент xsl:apply-templates на его место подставляются то, что получится в результате обработки всех элементов, удовлетворяющих выражению select (я указывал просто названия тегов, хотя там могут быть достаточно сложные конструкции). Аналогично вставляются значения тегов (тег xsl:value-of) и атрибуты для тегов (тег xsl:attribute).

Шаблон document формирует основу html-страницы (теги html, head, body), а в них подставляются заголовок страницы и список элементов, формирующийся по шаблону items (Элементы списка формируются по шаблону items).

Всё преобразование делается на стороне клиента.

Это лишь малая доля того, что может предоставить технология таблиц преобразований. Visual Studio имеет удобный интерфейс по работе с ними, в том числе просмотр сгенерированного html.

habrahabr.ru

c# - Не могу отобразить xml в виде таблицы в браузере

Имеется xml и xslt файлы. Открываю xml в браузере и он отображается как обычно, но не как таблица. В чем ошибка?

<?xml version="1.0" encoding="windows-1251"?> <?xml-stylesheet type="text/xsl" href="XSLTFile1.xsl" ?> <?xml-stylesheet type="text/css" href="Stylesheet1.css"?> <NewDataSet> <izdelia> <material>сталь</material> <number>1</number> <length>1</length> <width>2</width> <heigth>3</heigth> </izdelia> <izdelia> <material>дерево</material> <number>2</number> <length>2</length> <width>3</width> <heigth>4</heigth> </izdelia> <izdelia> <material>пластмасса</material> <number>3</number> <length>4</length> <width>5</width> <heigth>6</heigth> </izdelia> <izdelia> <material>ольха</material> <number>10</number> <length>100</length> <width>26</width> <heigth>89</heigth> </izdelia> <izdelia> <material>дуб</material> <number>10</number> <length>1000</length> <width>26</width> <heigth>89</heigth> </izdelia> <izdelia> <material>дуб</material> <number>10</number> <length>1000</length> <width>26</width> <heigth>89</heigth> </izdelia> <izdelia> <material>дуб</material> <number>10</number> <length>1000</length> <width>26</width> <heigth>89</heigth> </izdelia> <izdelia> <material>дубо</material> <number>10</number> <length>1000</length> <width>26</width> <heigth>89</heigth> </izdelia> <izdelia> <material>дуба</material> <number>10</number> <length>1000</length> <width>26</width> <heigth>89</heigth> </izdelia> <izdelia> <material>дубо</material> <number>10</number> <length>1000</length> <width>26</width> <heigth>89</heigth> </izdelia> <izdelia> <material>дуба</material> <number>10</number> <length>1000</length> <width>26</width> <heigth>89</heigth> </izdelia> </NewDataSet> <?xml version="1.0" encoding="utf-8"?> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:msxsl="urn:schemas-microsoft-com:xslt" exclude-result-prefixes="msxsl"> <xsl:template match="NewDataSet"> <html> <body> <table border="1"> <tr bgcolor="#CCCCCC"> <td align="center"><strong>Материал</strong></td> <td align="center"><strong>Количество</strong></td> <td align="center"><strong>Длина</strong></td> <td align="center"><strong>Ширина</strong></td> <td align="center"><strong>Высота</strong></td> </tr> <xsl:for-each select="NewDataSet/izdelia"> <tr bgcolor="#F5F5F5"> <td><xsl:value-of select="material"/></td> <td align="right"><xsl:value-of select="number"/> <xsl:value-of select="number/@caption"/></td> <td><xsl:value-of select="length"/></td> <td><xsl:value-of select="width"/></td> <td><xsl:value-of select="heigth"/></td> </tr> </xsl:for-each> </table> </body> </html> </xsl:template> </xsl:stylesheet> NewDataSet { display: table } izdelia { display: table-row } material, number,length, width, heigth { display: table-cell }

ru.stackoverflow.com

Чем открыть XML-файл (программы и онлайн-сервисы)

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

Использование текстовых редакторов

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

Блокнот Windows и его аналоги

В составе Windows изначально есть программа, которая умеет работать с любым текстом – Блокнот. Найти её можно в списке стандартных приложений в меню «Пуск». Вместе с ним предустанавливается еще один текстовый редактор – WordPad. Его также можно использовать для просмотра документов с расширением XML.стандартные текстовые редакторы windows

Если щелкнуть по XML-файлу правой кнопкой, то сразу под пунктом «Открыть» будет строка «Изменить». При нажатии на неё содержимое документа отобразится в Блокноте. Если так открыть файл не получается, или вы хотите использовать для просмотра WordPad, раскройте меню «Открыть с помощью».открытие xml с помощью WordPad

Для чтения и редактирования XML-документов можно использовать и блокноты от сторонних разработчиков: например, NotePad++. В нем реализована подсветка синтаксиса, что может показаться удобным при редактировании файла.

Пакет Microsoft Office

Вместо Блокнота, WordPad и других подобных программ можно использовать приложения из пакета Microsoft Office – Word и Excel.

  1. Запустите Word.
  2. Раскройте главное меню, нажмите «Открыть».
  3. Укажите путь к XML-документу.

открытие файла в wordМинус Word в том, что в нем тяжело редактировать XML. Поэтому если вы хотите изменить какие-то данные, то лучше использовать Excel.

  1. Запустите Excel.
  2. Раскройте главное меню, нажмите «Открыть».
  3. Выберите XML-документ.
  4. Укажите на необходимость открыть его как XML-таблицу.

xml-таблица в excel

Если вместо пакета приложений Microsoft Office на компьютере установлена библиотека приложений OpenOffice, то ничего страшного: открыть XML можно через OpenOffice Calc, аналог Excel.

Редакторы XML

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

  • XML Editor от Oxygen
  • XML Marker
  • Xsemmel
  • EditiX Lite Version
  • XMLSpear

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

Выбор зависит от потребностей и навыков пользователя, так как софт является специализированным. Однако скачать перечисленные программы можно бесплатно.

Просмотр через браузер

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

Браузеры

Все современные браузеры поддерживают чтение формата XML. Однако нужно понимать, что раз в документе нет сведений о том, как отображать данные, веб-обозреватели показывают их «как есть». Чтобы использовать для открытия браузер (на примере Chrome):

  1. Щелкните правой кнопкой по XML-файлу. Выберите «Открыть с помощью».
  2. Если веб-обозревателя нет в списке приложений, которые можно использовать для просмотра файла, нажмите «Выбрать программу».
  3. Если в появившемся окне тоже не будет обозревателя, кликните по кнопке «Обзор».выбор программы для открытия xml
  4. Пройдите к исполняемому файлу обозревателя в папке Program Files (Chrome по умолчанию устанавливается в этот каталог, но если вы меняли место инсталляции, то используйте другой путь).
  5. Выберите chrome.exe и нажмите «ОК».выбор приложения chrome

Аналогичным образом запуск выполняется через другие браузеры. В обозревателе откроется новая вкладка, внутри которой отобразится содержимое документа XML.отображение xml домкумента в chrome

В Mozilla Forefox можно открыть файл другим способом:

  1. Щелкните правой кнопкой по верхней панели. Отметьте пункт «Панель меню».включение панели меню в firefox
  2. Раскройте раздел «Файл». Нажмите «Открыть файл».
  3. Найдите документ XML через проводник и нажмите «Открыть».открытие xml-файла в firefox

Если файл поврежден, то браузер при попытке открыть документ может вывести сообщение об ошибке. В таком случае рекомендуется воспользоваться одним из редакторов XML, указанных выше.

Онлайн-сервис

Просмотреть и отредактировать XML-файл можно на онлайн-сервисе xmlgrid.net. Порядок работы такой:

  1. Откройте страничку онлайн-редактора, нажмите «Open File».
  2. Щелкните по кнопке «Выберите файл» и укажите путь к документу. Нажмите «Submit».

xmlgridНа странице отобразится содержимое документа. Вы можете его просматривать и редактировать прямо в окне браузера. Есть и другие онлайн-сервисы — например, CodeBeautify, XML Editor от TutorialsPoint. Так что файл XML при любом раскладе будет прочитан и отредактирован, если у пользователя возникнет такое желание.

compconfig.ru

xml - Вставить XSL в XML для отображения в веб-браузере: что я делаю неправильно?

Итак, я попытался это исследовать, и я почти полностью ухожу. Я нашел способ внедрить XSL в XML на dpawson.co.uk, но я не могу понять, что я делаю неправильно. Я искал интернет, пытаясь найти решения и объяснения, но никто, кажется, не получил ответа.

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

Здесь мой код:

<?xml version="1.0" encoding="ISO-8859-1"?> <!--Start XSL--> <?xml-stylesheet type="text/xml" href="#stylesheet"?> <!DOCTYPE doc [ <!ATTLIST xsl:stylesheet id ID #REQUIRED> ]> <doc> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" > <xsl:template match="xsl:stylesheet" /> <!--Variables--> <xsl:variable name="a" select="list/movie/seen[@value ='Yes']" /> <xsl:variable name="b" select="list/movie/seen" /> <xsl:variable name="c" select="sum(list/movie/rating/@value)" /> <xsl:variable name="d" select="$c div count($a)" /> <xsl:variable name="e" select="count($a) div count($b)" /> <xsl:variable name="f" select="list/movie/seen[@value ='No']" /> <xsl:variable name="g" select="list/movie/seen[@value ='Prior']" /> <xsl:variable name="h" select="count($f) div count($b)" /> <xsl:variable name="j" select="count($g) div count($b)" /> <xsl:variable name="minutes_total" select="sum(list/movie/length[@value ='y'])" /> <xsl:variable name="minutes" select="$minutes_total mod 60" /> <xsl:variable name="hours" select="floor($minutes_total div 60) mod 24" /> <xsl:variable name="hours2" select="floor($minutes_total div 60)" /> <xsl:variable name="days" select="floor($hours2 div 24)" /> <xsl:decimal-format name="percent" /> <xsl:decimal-format name="average" decimal-separator="." /> <!--End Variables--> <xsl:template match="/doc"> <html> <head> <style> h3{ font-family: Courier, Courier New, monospace; font-size: 32px; text-decoration: underline; } body{ font-family: Courier New, monospace; } p{ font-size: 16px; } table{ font-size: 14px; } .title{ text-align:left; } .release{ text-align:center; } .seen{ text-align:center; } .rating{ text-align:right; } .length{ text-align:center; } </style> </head> <body> <h3>My Movie List</h3> <p>Movies seen so far: <xsl:value-of select="count($a)" />/<xsl:value-of select="count($b)" /> = <xsl:value-of select="format-number($e, '#%', 'percent')" /><br /> Movies yet to see: <xsl:value-of select="count($f)" />/<xsl:value-of select="count($b)" /> = <xsl:value-of select="format-number($h, '#%', 'percent')" /><br /> Movies seen prior to making list: <xsl:value-of select="count($g)" />/<xsl:value-of select="count($b)" /> = <xsl:value-of select="format-number($j, '#%', 'percent')" /><br /> Total time watched: <xsl:value-of select="format-number($days, '#0')" /> days, <xsl:value-of select="format-number($hours, '#0')" /> hours, <xsl:value-of select="format-number($minutes, '#0')" /> minutes<br /> Average rating: <xsl:value-of select="format-number($d, '#.000', 'average')" /> stars out of 5</p> <br /> <table border="1"> <tr> <th>#</th> <th>Title</th> <th>Release Date</th> <th>Length</th> <th>Seen</th> <th>Rating</th> </tr> <xsl:for-each select="list/movie"> <xsl:choose> <xsl:when test='seen = "Yes"'> <tr> <td> <xsl:number /></td> <td><xsl:value-of select="title"/></td> <td><xsl:value-of select="release"/></td> <td><xsl:value-of select="length" /> minutes</td> <td><xsl:value-of select="seen"/></td> <td><xsl:value-of select="rating"/></td> </tr> </xsl:when> <xsl:when test='seen = "Seen prior to making list"'> <tr> <td> <xsl:number /></td> <td><xsl:value-of select="title"/></td> <td><xsl:value-of select="release"/></td> <td><xsl:value-of select="length"/> minutes</td> <td><xsl:value-of select="seen"/></td> <td><xsl:value-of select="rating"/></td> </tr> </xsl:when> <xsl:otherwise> <tr> <td> <xsl:number /></td> <td><xsl:value-of select="title"/></td> <td><xsl:value-of select="release"/></td> <td><xsl:value-of select="length" /> minutes</td> <td><xsl:value-of select="seen"/></td> <td><xsl:value-of select="rating"/></td> </tr> </xsl:otherwise> </xsl:choose> </xsl:for-each> </table> </body> </html> </xsl:template> </xsl:stylesheet> <!--Start XML--> <list> <movie> <title>2001: A Space Odyssey</title> <release>1968</release> <seen value="No">No</seen> <rating>N/A</rating> <length value="n">141</length> </movie> <movie> <title>28 Days Later</title> <release>2002</release> <seen value="No">No</seen> <rating>N/A</rating> <length value="n">113</length> </movie> <movie> <title>28 Weeks Later</title> <release>2007</release> <seen value="No">No</seen> <rating>N/A</rating> <length value="n">100</length> </movie> <movie> <title>A Clockwork Orange</title> <release>1971</release> <seen value="Yes">Yes</seen> <rating value="2">&#9734;&#9734;&#9734;&#9733;&#9733;</rating> <length value="y">136</length> </movie> <!--Rest of XML--> </list> </doc>

Это список фильмов, в которых содержится столько, сколько я видел до сих пор, сколько я еще не видел, сколько я видел до того, как я составил список, общее количество времени, которое я внес в просмотр фильмов и средний рейтинг за просмотр фильма.

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

Все, что угодно может предложить, будут очень благодарны!

qaru.site

Отображение xml во Всемирной паутине

Наиболее распространены три способа преобразования XML-документа в отображаемый пользователю вид:

  1. Применение стилей CSS;

  2. Применение XSL;

  3. Написание на каком-либо языке программирования обработчика XML-документа.

Без использования CSS или XSL XML-документ отображается как простой текст в большинстве веб-браузеров. Некоторые браузеры, такие как Internet Explorer и Mozilla Firefox отображают структуру документа в виде дерева, позволяя сворачивать и разворачивать узлы с помощью нажатий клавиши мыши.

Применение стилей css.

Процесс аналогичен применению CSS к HTML-документу для отображения.

Для применения CSS при отображении в браузере, XML-документ должен содержать специальную ссылку на таблицу стилей. Например:

<?xml-stylesheet type="text/css" href="myStyleSheet.css"?>

Это отличается от подхода HTML, где используется элемент <link>.

Применение xsl.

XSL является семейством рекомендаций, описывающих языки преобразования и визуализации XML-документов. Документ трансформируется в формат, подходящий для отображения в браузере. Браузер — это наиболее частое использование XSL, но не стоит забывать, что с помощью XSL можно трансформировать XML в любой формат, например VRML, PDF, текст.

Для задания XSL трансформации (XSLT) на стороне клиента требуется наличие в XML инструкции следующего вида:

<?xml-stylesheet type="text/xsl" href="transform.xsl"?>

Словари xml

Так как XML является достаточно абстрактным языком, были разработаны словари XML.

Словарь позволяет разработчикам договориться о некотором конечном наборе имен тегов и атрибутов этих тегов. Одним из первых словарей является XHTML, который понимают большинство браузеров. XHTML часто используют для хранения и редактирования контента в CMS.

Были созданы более специализированные словари, например протокол передачи данных SOAP, который не является человеко-ориентированным и достаточно трудно читаем. Есть коммерческие словари, такие как CommerceML, xCBL и cXML которые используются для передачи данных, ориентированных на торговую деятельность, эти словари включают в себя описание системы заказов, поставщиков, продуктов и прочее.

Обычно, описывая какой-либо документ, человек для себя придумывает некоторый словарь, который потом описывается посредством DTD или просто объясняется «на пальцах» заинтересованным лицам.

Одним из словарей, получивших широкое распространение, является FB2 — словарь, описывающий формат книги, со всевозможными сносками, цитатами, даже картинками.

Как выглядит xml-документ?

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

Структура документа

Простейший XML- документ может выглядеть так, как это показано в Примере 1

<?xml version="1.0"?>

<list_of_items>

<item id="1"><first/>Первый</item>

<item id="2">Второй <sub_item>подпункт 1</sub_item></item>

<item id="3">Третий</item>

<item id="4"><last/>Последний</item>

</list_of_items>

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

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

Любой XML- документ должен всегда начинаться с инструкции <?xml?>, внутри которой также можно задавать номер версии языка, номер кодовой страницы и другие параметры, необходимые программе-анализатору в процессе разбора документа

studfiles.net

c# - Открываю XML в браузере и выходит пустая белая страница - XML/XSL

Как я понимаю при запуске xml файла в браузере (Google Сhrome) должна формироваться html страничка. Но в итоге появляется просто белый экран. Где ошибка?

<?xml version="1.0" encoding="UTF-8"?> <?xml-stylesheet type="text/xsl" href="xslt1.xsl"?> <?xml-stylesheet type="text/css" href="style.css"?> <NewDataSet> <izdelia> <material>сталь</material> <number>1</number> <length>1</length> <width>2</width> <heigth>3</heigth> </izdelia> <izdelia> <material>дерево</material> <number>2</number> <length>2</length> <width>3</width> <heigth>4</heigth> </izdelia> <izdelia> <material>пластмасса</material> <number>3</number> <length>4</length> <width>5</width> <heigth>6</heigth> </izdelia> <izdelia> <material>ольха</material> <number>10</number> <length>100</length> <width>26</width> <heigth>89</heigth> </izdelia> <izdelia> <material>дуб</material> <number>10</number> <length>1000</length> <width>26</width> <heigth>89</heigth> </izdelia> <izdelia> <material>дуб</material> <number>10</number> <length>1000</length> <width>26</width> <heigth>89</heigth> </izdelia> <izdelia> <material>дуб</material> <number>10</number> <length>1000</length> <width>26</width> <heigth>89</heigth> </izdelia> <izdelia> <material>дубо</material> <number>10</number> <length>1000</length> <width>26</width> <heigth>89</heigth> </izdelia> <izdelia> <material>дуба</material> <number>10</number> <length>1000</length> <width>26</width> <heigth>89</heigth> </izdelia> <izdelia> <material>дубо</material> <number>10</number> <length>1000</length> <width>26</width> <heigth>89</heigth> </izdelia> <izdelia> <material>дуба</material> <number>10</number> <length>1000</length> <width>26</width> <heigth>89</heigth> </izdelia> <izdelia> <material>сталь</material> <number>1</number> <length>1</length> <width>2</width> <heigth>3</heigth> </izdelia> <izdelia> <material>дерево</material> <number>2</number> <length>2</length> <width>3</width> <heigth>4</heigth> </izdelia> <izdelia> <material>пластмасса</material> <number>3</number> <length>4</length> <width>5</width> <heigth>6</heigth> </izdelia> <izdelia> <material>ольха</material> <number>10</number> <length>100</length> <width>26</width> <heigth>89</heigth> </izdelia> <izdelia> <material>дуб</material> <number>10</number> <length>1000</length> <width>26</width> <heigth>89</heigth> </izdelia> <izdelia> <material>дуб</material> <number>10</number> <length>1000</length> <width>26</width> <heigth>89</heigth> </izdelia> <izdelia> <material>дуб</material> <number>10</number> <length>1000</length> <width>26</width> <heigth>89</heigth> </izdelia> <izdelia> <material>дубо</material> <number>10</number> <length>1000</length> <width>26</width> <heigth>89</heigth> </izdelia> <izdelia> <material>дуба</material> <number>10</number> <length>1000</length> <width>26</width> <heigth>89</heigth> </izdelia> <izdelia> <material>дубо</material> <number>10</number> <length>1000</length> <width>26</width> <heigth>89</heigth> </izdelia> <izdelia> <material>дуба</material> <number>10</number> <length>1000</length> <width>26</width> <heigth>89</heigth> </izdelia> <izdelia> <material>сталь</material> <number>1</number> <length>1</length> <width>2</width> <heigth>3</heigth> </izdelia> <izdelia> <material>дерево</material> <number>2</number> <length>2</length> <width>3</width> <heigth>4</heigth> </izdelia> <izdelia> <material>пластмасса</material> <number>3</number> <length>4</length> <width>5</width> <heigth>6</heigth> </izdelia> <izdelia> <material>ольха</material> <number>10</number> <length>100</length> <width>26</width> <heigth>89</heigth> </izdelia> <izdelia> <material>дуб</material> <number>10</number> <length>1000</length> <width>26</width> <heigth>89</heigth> </izdelia> <izdelia> <material>дуб</material> <number>10</number> <length>1000</length> <width>26</width> <heigth>89</heigth> </izdelia> <izdelia> <material>дуб</material> <number>10</number> <length>1000</length> <width>26</width> <heigth>89</heigth> </izdelia> <izdelia> <material>дубо</material> <number>10</number> <length>1000</length> <width>26</width> <heigth>89</heigth> </izdelia> <izdelia> <material>дуба</material> <number>10</number> <length>1000</length> <width>26</width> <heigth>89</heigth> </izdelia> <izdelia> <material>дубо</material> <number>10</number> <length>1000</length> <width>26</width> <heigth>89</heigth> </izdelia> <izdelia> <material>дуба</material> <number>10</number> <length>1000</length> <width>26</width> <heigth>89</heigth> </izdelia> <izdelia> <material>сталь</material> <number>1</number> <length>1</length> <width>2</width> <heigth>3</heigth> </izdelia> <izdelia> <material>дерево</material> <number>2</number> <length>2</length> <width>3</width> <heigth>4</heigth> </izdelia> <izdelia> <material>пластмасса</material> <number>3</number> <length>4</length> <width>5</width> <heigth>6</heigth> </izdelia> <izdelia> <material>ольха</material> <number>10</number> <length>100</length> <width>26</width> <heigth>89</heigth> </izdelia> <izdelia> <material>дуб</material> <number>10</number> <length>1000</length> <width>26</width> <heigth>89</heigth> </izdelia> <izdelia> <material>дуб</material> <number>10</number> <length>1000</length> <width>26</width> <heigth>89</heigth> </izdelia> <izdelia> <material>дуб</material> <number>10</number> <length>1000</length> <width>26</width> <heigth>89</heigth> </izdelia> <izdelia> <material>дубо</material> <number>10</number> <length>1000</length> <width>26</width> <heigth>89</heigth> </izdelia> <izdelia> <material>дуба</material> <number>10</number> <length>1000</length> <width>26</width> <heigth>89</heigth> </izdelia> <izdelia> <material>дубо</material> <number>10</number> <length>1000</length> <width>26</width> <heigth>89</heigth> </izdelia> <izdelia> <material>дуба</material> <number>10</number> <length>1000</length> <width>26</width> <heigth>89</heigth> </izdelia> </NewDataSet> <?xml version="1.0" encoding="UTF-8"?> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <xsl:template match="/"> <html> <body> <h3>My Collection</h3> <table border="1"> <tr bgcolor="#9acd32"> <td>MATERIAL</td> <td>NUMBERS</td> <td>L</td> <td>W</td> <td>H</td> </tr> <xsl:for-each select="NewDataSet/izdelia"> <tr> <td><xsl:value-of select="material"/></td> <td><xsl:value-of select="number"/></td> <td><xsl:value-of select="length"/></td> <td><xsl:value-of select="width"/></td> <td><xsl:value-of select="heigth"/></td> </tr> </xsl:for-each> </table> </body> </html> </xsl:template> </xsl:stylesheet> NewDataSet { display: table; background: center; /* Цвет фона таблицы */ color: green; /* Цвет текста */ border-spacing: 1px; /* Расстояние между ячейками */ } izdelia { display: table-row; line-height: 30px; border-collapse: inherit; } material, number,length, width, heigth { display: table-cell; font-family: Arial, sans-serif; color: red; }

ru.stackoverflow.com

Отображение XML файла в браузере

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 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 namespace WindowsFormsApplication22 {     public partial class Form1 : Form     {         ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////                   [DllImport("kernel32.dll", SetLastError = true)]         static extern System.IntPtr OpenFileMapping(uint dwDesiredAccess,                                              bool bInheritHandle,                                              string lpName);             [DllImport("kernel32.dll", SetLastError = true)]         static extern IntPtr MapViewOfFile(IntPtr hFileMappingObject,                                            uint dwDesiredAccess,                                            uint dwFileOffsetHigh,                                            uint dwFileOffsetLow,                                            uint dwNumberOfBytesToMap);         [DllImport("kernel32.dll", SetLastError = true, CharSet = CharSet.Auto)]         public static extern IntPtr CreateFileMapping(             IntPtr hFile,             IntPtr lpFileMappingAttributes,             uint flProtect,             uint dwMaximumSizeHigh,             uint dwMaximumSizeLow,             string lpName);         [Flags]         enum FileMapProtection : uint         {             PageReadonly = 0x02,             PageReadWrite = 0x04,             PageWriteCopy = 0x08,             PageExecuteRead = 0x20,             PageExecuteReadWrite = 0x40,             SectionCommit = 0x8000000,             SectionImage = 0x1000000,             SectionNoCache = 0x10000000,             SectionReserve = 0x4000000,         }                 const UInt32 STANDARD_RIGHTS_REQUIRED = 0x000F0000;         const UInt32 SECTION_QUERY = 0x0001;         const UInt32 SECTION_MAP_WRITE = 0x0002;         const UInt32 SECTION_MAP_READ = 0x0004;         const UInt32 SECTION_MAP_EXECUTE = 0x0008;         const UInt32 SECTION_EXTEND_SIZE = 0x0010;         const UInt32 SECTION_ALL_ACCESS = (STANDARD_RIGHTS_REQUIRED | SECTION_QUERY |             SECTION_MAP_WRITE |             SECTION_MAP_READ |             SECTION_MAP_EXECUTE |             SECTION_EXTEND_SIZE);         const UInt32 FILE_MAP_ALL_ACCESS = SECTION_ALL_ACCESS;               ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////         reg r;// класс для выделения виртуальной памяти в процессе, код в спойлере           System.IntPtr g_hMapFile;         public Form1()         {             InitializeComponent();             g_hMapFile = OpenFileMapping(FILE_MAP_ALL_ACCESS, false, "AYE");               if (g_hMapFile == IntPtr.Zero)             {                 MessageBox.Show("файла нет, создаем");                 g_hMapFile = CreateFileMapping(new IntPtr(-1), (IntPtr)null, (uint)FileMapProtection.PageReadWrite, 0, 1 * 1024 * 1024, "AYE");               }             else MessageBox.Show("файл уже создан другим экземпляром программы)");               if(g_hMapFile==IntPtr.Zero)             {                 MessageBox.Show("ошибка");             }             r = new reg(1024 * 1024);//класс для выделения памяти в процессе             r.sadress = MapViewOfFile(g_hMapFile, FILE_MAP_ALL_ACCESS, 0, 0, 0);//проблемная строка которую надо как то использовать по другому                                 }           private void button2_Click(object sender, EventArgs e)         {             //тут предполагаю что надо как то вызвать MapViewOfFile               //достаем строку из памяти процесса             UnicodeEncoding uniEncoding = new UnicodeEncoding();             byte[] b=new byte[1024*1024];                       Marshal.Copy(r.sadress, b, 0, 1024 * 1024);             string s = uniEncoding.GetString(b);               MessageBox.Show(s);         }           private unsafe void button1_Click(object sender, EventArgs e)         {             //запись в память процесса             string s = textBox1.Text;               UnicodeEncoding uniEncoding = new UnicodeEncoding();             byte[] b= uniEncoding.GetBytes(s);             Marshal.Copy(b,0, r.sadress, b.Length);             //тут предполагаю что надо как то вызвать MapViewOfFile                }     } }

Смотрите также

 

..:::Новинки:::..

Windows Commander 5.11 Свежая версия.

Новая версия
IrfanView 3.75 (рус)

Обновление текстового редактора TextEd, уже 1.75a

System mechanic 3.7f
Новая версия

Обновление плагинов для WC, смотрим :-)

Весь Winamp
Посетите новый сайт.

WinRaR 3.00
Релиз уже здесь

PowerDesk 4.0 free
Просто - напросто сильный upgrade проводника.

..:::Счетчики:::..