Как сохранить страницу в формате XML?

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

Как сохранить страницу в формате XML?

Как сделать файл с расширением XML

Опубликовано 15 февраля 2018
Автор статьи NimdaIT
Категория Полезные советы
Обсуждение нет комментариев

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

Что это за тип файла

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

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

Способ 1: Использование программы Visual Studio

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

  1. Запустите программу и перейдите во вкладку «Файл».
  2. В открывшемся меню выберите пункт «Создать» и перейдите на строку «Файл».
  3. Теперь необходимо определиться с форматом. Нажмите «XML-файл».
  4. Откроется окно для работы, в котором начало будет уже написано. Автоматически используется кодировка UTF-8, но его всегда с легкостью можно изменить.
  5. Пропишите нужный код.
  6. После завершения написания, перейдите во вкладку «Файл» и выберите «Сохранить все».

Способ 2: Воспользоваться Microsoft Excel

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

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

  1. Запустите программу и введите необходимую информацию.
  2. Перейдите во вкладку «Файл».
  3. В появившейся вкладке кликните на пункт «Сохранить как».
  4. Выберите каталог для сохранения.
  5. Введите имя документа и укажите во вкладке «Тип файла» «XML-данные».
  6. Подтвердите пройденные шаги нажав на «Сохранить».

Способ 3: Текстовый редактор Блокнот

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

Единственное преимущество этого способа заключается в том, что нет необходимости устанавливать какое-либо дополнительное ПО. Рассмотрим, как создать файл с нужным расширением:

  1. Запустите редактор и создайте пустой документ.
  2. Пред началом работы требуется установить необходимую кодировку. Делается с помощью команды:

Кодировку можно использовать и другую.

  • Создайте первый фрагмент написав текст .
  • Внутри можно указать любую команду, например с названием Василий Васильевич.
  • Появилась возможность вписать внутрь тега любые параметры. Укажите возраст и профессию. 45 True
  • Если вы не напутаете ничего в написании, по итогу получится рабочий код.
  • Для того чтобы сохранить результат выберите вкладку «Файл».
  • Кликните на пункт «Сохранить как».
  • В процессе присваивания имени файлу измените формат на XML.

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

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

    Создаём XML-файл

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

    Немного об XML

    Сам по себе XML — это язык разметки, чем-то похожий на HTML, который используется на веб-страницах. Но если последний применяется только для вывода информации и её правильной разметки, то XML позволяет её структурировать определённым образом, что делает этот язык чем-то похожим на аналог базы данных, который не требует наличия СУБД.

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

    Способ 1: Visual Studio

    Вместо этого редактора кода от Microsoft можно использовать любой его аналог от других разработчиков. По факту Visual Studio является более расширенной версией обычного «Блокнота». Код теперь имеет специальную подсветку, ошибки выделяются или исправляются автоматически, также в программу уже загружены специальные шаблоны, которые позволяют упростить создание XML-файлов больших объёмов.

    Для начала работы вам нужно создать файл. Нажмите по пункту «Файл» в верхней панели и из выпадающего меню выберите «Создать…». Откроется список, где указывается пункт «Файл».

    В только что созданном файле уже будет первая строка с кодировкой и версией. По умолчанию прописана первая версия и кодировка UTF-8, которые вы можете поменять в любое время. Дальше для создания полноценного XML-файла вам нужно прописать всё то, что было в предыдущей инструкции.

    По завершении работы снова выберите в верхней панели «Файл», а там из выпадающего меню пункт «Сохранить всё».

    Способ 2: Microsoft Excel

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

    Такой способ больше подойдёт тем, кто не хочет или не умеет работать с кодом. Однако в этом случае пользователь может столкнуться с определёнными проблемами при перезаписи файла в XML-формат. К сожалению, проделать операцию преобразования обычной таблицы в XML можно только на самых новых версиях MS Excel. Чтобы это сделать, используйте следующую пошаговую инструкцию:

    1. Заполните таблицу каким-либо контентом.
    2. Нажмите на кнопку «Файл», что в верхнем меню.

    Откроется специальное окно, где нужно нажать на «Сохранить как…». Этот пункт можно найти в левом меню.

    Укажите папку, куда необходимо сохранить файл. Папка указывается в центральной части экрана.

  • Теперь вам нужно указать название файла, а в разделе «Тип файла» из выпадающего меню выбрать
    «XML-данные».
  • Нажмите на кнопку «Сохранить».

    Способ 3: Блокнот

    Для работы с XML вполне подойдёт даже обычный «Блокнот», однако пользователю, который не знаком с синтаксисом языка, придётся трудно, так как в нём нужно прописывать различные команды и теги. Несколько проще и значительно продуктивнее процесс будет идти в специализированных программах для редактирования кода, например, в Microsoft Visual Studio. В них есть специальная подсветка тегов и всплывающие подсказки, что значительно упрощает работу человеку, плохо знакомому с синтаксисом этого языка.

    Для этого способа не потребуется что-либо скачивать, так как в операционную систему уже встроен «Блокнот». Давайте попробуем сделать в нём простую XML-таблицу по данной инструкции:

      Создайте обычный текстовый документ с расширением TXT. Разместить его можно где угодно. Откройте его.

    Начните прописывать в нём первые команды. Для начала нужно задать всему файлу кодировку и указать версию XML, делается это следующей командой:

    Первое значение — это версия, её менять не обязательно, а второе значение — это кодировка. Рекомендуется использовать кодировку UTF-8, так как большинство программ и обработчиков работают с ней корректно. Однако её можно изменить на любую другую, просто прописав нужное название.

  • Создайте первый каталог в вашем файле, прописав тег и закрыв его таким образом .
  • Внутри этого тега теперь можно написать какой-нибудь контент. Создадим тег и присвоим ему любое имя, например, «Иван Иванов». Готовая структура должна быть такой:

    Внутри тега теперь можно прописать более подробные параметры, в данном случае это информация о неком Иване Иванове. Пропишем ему возраст и должность. Выглядеть это будет так:

    Если вы следовали инструкции, то у вас должен получиться такой же код, как ниже. По завершении работы в верхнем меню найдите «Файл» и из выпадающего меню выберите «Сохранить как…». При сохранении в поле «Имя файла» после точки должно стоять расширение не TXT, а XML.

    Примерно так у вас должен выглядеть готовый результат:

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

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

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

    Помимо этой статьи, на сайте еще 12304 инструкций.
    Добавьте сайт Lumpics.ru в закладки (CTRL+D) и мы точно еще пригодимся вам.

    Отблагодарите автора, поделитесь статьей в социальных сетях.

    Иллюстрированный самоучитель по Microsoft Office 2003

    Сохранение и использование файлов в формате HTML и XML

    Если вы работаете на локальном компьютере, то документ, созданный в Microsoft Office, по умолчанию сохраняете в двоичном формате, имеющем расширение.doc,.xls,.ppt и т.п., в зависимости от приложения, в котором он создавался. Документ Word можно сохранить в формате HTML (Hypertext Markup Language) и XML (extensible Markup Language – расширяемый язык разметки) и опубликовать в корпоративной сети или в Интернете, выбрав в меню Файл (File) команду Сохранить как Веб-страницу (Save As Web-Page). Поле Тип файла (Save as type) диалогового окна команды сохранить файл в таких форматах как: Веб-страница (Web Page), Веб-страница с фильтром (Web Page, Filtered) и Веб-архив (Web Archive). Формат Веб-страница (Web Page) сохраняет все возможности редактирования документа в формате HTML. Формат Веб-страница с фильтром (Web Page, Filtered) удаляет часть HTML кода и уменьшает размер файла. Формат Веб-архив (Single file Web Page) позволяет переслать содержимое (текст и графику) в одном файле *.mht, *.mhtml.

    При использовании любого из вышеназванных форматов в каждом документе сохраняются все параметры форматирования. Пользователи корпоративной сети или в Интернете, на компьютерах которых не установлен Microsoft Office, могут просматривать файлы, сохраненные в форматах HTML или XML, в обозревателе или в других программах просмотра Интернета.

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

    Особенности сохранения файлов в формате HTML

    Различают статический и динамический форматы HTML. Статический формат используется в тех случаях, когда данные изменяются редко, динамический – когда необходимо отобразить последние на момент публикации данные. Отметим, что уже Access 2002 поддерживал преобразование объектов в два динамических формата HTML: ASP (Active Server Pages) и IDC/HTX. Файл с расширением asp используется для динамических веб-страниц, с расширением idc содержит запрос в форме инструкции SQL, с расширением htx содержит команды и инструкции по форматированию. Вместо данных в файлы с расширением htx. включены шаблоны, указывающие место вставки данных из запроса в файле с расширением idc.

    При сохранении документа в формате HTML Office 2003 создает в заданном каталоге один HTML-файл (например, otchet.htm) и папку с тем же именем, включающую все вспомогательные файлы документа и управляющий основной файл. В отдельный файл помещаются каждый рисунок, Электронная таблица, слайд презентации, набор вспомогательных данных. Все графические изображения в зависимости от содержания автоматически преобразуются в формат.GIF, JPG, JPEG или.PNG. Например, штриховые рисунки сохраняются в формате GIF, а фотографии – в JPEG. При перемещении таких документов необходимо копировать как основной HTML-файл, так и папку со вспомогательными файлами. (Подробнее см. ниже раздел «Типы файлов, используемые для отображения рисунков и графики на веб-странице»)

    Для облегчения редактирования нерастровой графики с помощью соответствующих программ при преобразовании документа Office 2003 в формат HTML графические изображения сохраняются как во внутреннем формате, так и в формате обозревателя.

    В качестве примера приведем порядок преобразования объекта базы данных Access в динамический формат HTML:

    1. В окне База данных (Database) выделите щелчком мыши требуемый объект и выберите в меню Файл (File) команду Экспорт (Export To).
    2. В диалоговом окне Экспорт объекта (Export To) в поле Тип файла (Save as type) выделите строку Microsoft IIS 1-2 или Страницы Microsoft ASP (Microsoft Active Server Pages).
    3. Выберите папку, в которой будет сохранен экспортируемый файл и введите имя файла латинскими буквами в поле Имя файла (File name).
    4. Нажмите кнопку Экспорт (Export).
    5. При использовании формата Active Server Pages появится диалоговое окно Настройка вывода файла ASP (Microsoft Active Server Pages Output Options), в котором укажите назовите источник данных ODBC. Он будет использован на веб-сервере для доступа к данным. Введите адрес сервера, на котором будет размещен файл ASP.

    Использование ценных в формате XML

    Office 2003 поддерживает язык XML (extensible Markup Language – расширяемый язык разметки). Этот язык обеспечивает интуитивно понятные мощные средства коллективной работы и широко используется при обмене информацией в Интернете независимо от применяемой платформы, формата данных. Формат XML разработан на базе HTML как формат универсального представления данных в корпоративных сетях и в Интернете. Он обладает более широкими возможностями, чем HTML. В этом формате можно представить любой документ Office.

    XML упрощает выборку данных из документов Office 2003 в другие XML-приложения. Можно разделить содержимое документа и границы его двоичного формата. Содержимое становится доступным для процессов автоматического сбора и анализа данных с последующей корректировкой. Документ XML может состоять из нескольких файлов разных типов, например, файла XML, содержащего данные; файла ASP, содержащего веб-страницу для просмотра документа; файла xsd, содержащего описание структуры данных и т.д. Единый документ можно просмотреть в Internet Explorer версии 5 и выше. Файл, в формате HTML содержит сценарий, который загружает данные из источника в формате XML.

    В отличие от универсальных тегов HTML, теги XML могут видоизменяться разработчиками и поэтому должны передаваться тому ПО, которое их использует. Microsoft предполагает использовать XML-формы исключительно на корпоративном рынке. В связи с тем, что некоторые обозреватели не работают с XML, в Word предусмотрена возможность сохранения документа в виде фильтрованной веб-страницы без использования дескрипторов XML. Для использования этой возможности в меню Сервис (Tools) выберите команду Параметры (Options), а затем откройте вкладку Общие (General), нажмите кнопку Параметры веб-документа (Web Options) и перейдите на вкладку Обозреватели (Browsers), установите или снимите флажок Отключение компонентов, не поддерживаемых этим обозревателем. Совокупность XML-тегов, определяющих элементы документа, называется схемой (schema).

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

    Сохранение и открытие проектов в формате XML

    Схема обмена данными XML (mspdi_pj12.xsd) в Microsoft Office Project 2007 определяет, как Project 2007 считывает и записывает данные проектов в формате XML. Эта статья содержит описание использования файлы обмена данными XML в Project 2007, а также следующие разделы:

    Сохранение файлов проекта в формате XML

    Открытие файлов Project XML

    Сохранение файлов проекта в формате XML

    В Project стандартный 2007 и Project профессиональный 2007 можно сохранить любой проект в файле обмена данными Project XML. Действия, описанные в процедуре 1, относятся к Project профессиональный.

    Данные проекта, хранящиеся в файлах Project XML, можно фильтровать и отображать с помощью преобразований XSLT. За дополнительными сведениями обращайтесь к статье Как использовать преобразования XSLT в файлах обмена данными Project XML.

    Процедура 1. Сохранение файла проекта в формате XML с помощью Project профессиональный

    В приложении Project профессиональный откройте меню Файл и выберите команду Сохранить как.

    В диалоговом окне Сохранить в Project Server (Рис. 1) выберите Сохранить как файл.

    Если вы работаете с Project профессиональный 2007 в автономном окружении, диалоговые окна Сохранить в Project Server (Рис. 1) или Сохранить как файл (Рис. 2) не будут отображаться. Появится только диалоговое окно Сохранить как.

    Рис. 1. Диалоговое окно «Сохранить в Project Server»

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

    Выбрав вид сохранения, нажмите кнопку OK.

    Рис. 2. Диалоговое окно «Сохранить как файл»

    В диалоговом окне Сохранить как перейдите в расположение, где вы хотите сохранить файл.

    В списке Тип файла выберите пункт Формат XML (*.xml) и нажмите кнопку Сохранить. Если не выбрать формат *.xml, проект будет сохранен в формате файла Project по умолчанию (.mpp).

    Открытие файлов Project XML

    Любой правильный файл обмена данными Project 2007 XML можно открыть в приложениях Project стандартный 2007 и Project профессиональный 2007. Project стандартный игнорирует XML-данные, которые применяются только к корпоративным проектам. После открытия файла Project XML он ведет себя как любой другой проект.

    Процедура 2. Открытие файла Project XML

    В приложении Project профессиональный 2007 откройте меню Файл и выберите команду Открыть.

    Также можно открыть файл Project XML, перейдя к нему в окне проводника, щелкнув его правой кнопкой мыши и выбрав пункт Microsoft Office Project в меню Открыть с помощью. При открытии файла Project XML этим способом сразу же появляется Мастер Импорта, как показано на Рис. 4.

    В диалоговом окне Открыть (Рис. 3) выберите вариант в области Искать в:, расположенной слева от диалогового окна Открыть (например, Мои документы), а затем перейдите к расположению XML-файла, который надо открыть.

    Следует вручную выбрать пункт Формат XML (.xml) или Все файлы (.*) а списке Тип файлов, чтобы в диалоговом окне Открыть отобразились XML-файлы. На Рис. 3 показано диалоговое окно «Открыть» в приложении Project профессиональный.

    Выберите XML-файл, который надо открыть, и нажмите кнопку Открыть. Также можно просто дважды щелкнуть XML-файл.

    Рис. 3. Диалоговое окно «Открыть»

    Запустится Мастер импорта (Рис. 4).

    Рис. 4. Мастер импорта

    Укажите, как вы хотите импортировать XML-файл, и нажмите кнопку Готово:

    Создать новый проект. Создает новый проект из XML-файла.

    Добавить данные к активному проекту. Добавляет данные проекта в XML-файле к существующему проекту, который в настоящее время активен в Project профессиональный.

    При добавлении XML-данных в Project 2007 к существующему проекту уникальный идентификатор добавленной суммарной задачи увеличивается с 0 до следующего доступного целого числа. Например, если в проекте, к которому добавляются XML-данные, существует три задачи с уникальными идентификаторами 1, 2 и 3, добавленной суммарной задаче будет присвоен уникальный идентификатор 4. Затем Project увеличит уникальные идентификаторы всех задач в добавленном проекте. В нашем примере задачам 1 и 2 добавленного проекта назначаются следующие доступные уникальные идентификаторы (5 и 6).

    Эта процедура позволяет отменять связь назначений, задач, ресурсов и ссылок между проектами с исходными данными. Чтобы не допустить раздробления данных, перед добавлением разделите их на минимально возможные компоненты: задачи, ресурсы, задания и т. д.

    Объединить данные с активным проектом. Данные проекта будут объединены в XML-файле с существующим проектом, который сейчас активен в Project профессиональный.

    При объединении данных XML в Project 2007 с существующим проектом задачи в файле проекта, которые в данный момент активны в Project профессиональный, заменяются задачами в XML-файле, которые имеют тот же уникальный идентификатор.

    Будьте внимательны при объединении данных XML с активным проектом, так как это может привести к потере данных.

    Если XML-файл не является допустимым согласно схеме обмена данными Project 2007 XML (mspdi_pj12.xsd), в Project появится сообщение об ошибке, как показано на Рис. 5.

    Преобразование в формат XML

    Рассмотрим процедуру преобразования объекта базы данных в формат XML:

    1. В окне базы данных выделите необходимый объект щелчком левой кнопки мыши и выберите команду Файл, Экспорт (File, Export) или щелкните по объекту правой кнопкой и выберите в контекстном меню команду Экспорт (Export).
    2. Появится диалоговое окно Экспорт объекта (Export To). В раскрывающемся списке Типы (Save as type) выделите элемент Документы XML (XML Documents). В поле Имя файла (File name) введите название документа HTML и нажмите кнопку Экспорт (Export).
    3. Появится диалоговое окно Экспорт XML (Export XML) (рис. 12.9).
    4. Это диалоговое окно содержит три флажка для трех составляющих документа XML: данных, схемы данных и представления данных (о них см. разд. «Формат XML в Microsoft Office 2002» данной главы). Установите флажки для тех частей документа XML, которые необходимо получить в результате экспорта. Например, если установить одновременно флажки данные (XML) (Data (XML)) и схема данных (Schema of the data), то схема данных будет экспортирована и сохранена отдельно от файла данных XML, в файле XSD. Для таблиц можно экспортировать только данные или их структуру или данные и структуру вместе и не экспортировать представление таблицы в виде Web-страницы: флажок презентация данных (XSL) (Presentation of your data (XSL)) можно снять.

    Рис. 12.9. Диалоговое окно Экспорт XML

    Замечание

    Флажок данные (XML) следует сбросить лишь в том случае, если вы хотите экспортировать только новое представление объекта базы данных, а данные были экспортированы в файл XML раньше. Иначе при открытии полученной Web-страницы будет выдано сообщение об ошибке подключения к источнику данных, а сама страница окажется практически пустой.

    1. Чтобы установить дополнительные параметры преобразования, нажмите кнопку Дополнительно (Advanced) (рис. 12.10).

    Рис. 12.10. Вкладка Данные диалогового окна Экспорт XML

    1. Кроме того, это диалоговое окно содержит еще две вкладки для двух оставшихся составляющих документа XML: схемы данных и представления данных. На каждой из этих вкладок можно установить флажок, позволяющий экспортировать соответствующую часть документа XML, указать путь и имя файла, в котором будет сохранена эта часть документа, и задать некоторые дополнительные параметры:
      • на вкладке Данные (Data) с помощью раскрывающегося списка Кодировка (Encoding) можно выбрать кодировку для сохранения содержимого страницы;
      • на вкладке Схема (Schema) с помощью переключателей можно выбрать, экспортировать ли структуру данных в отдельный файл XSD или внедрить ее в файл XML вместе с данными;

    Рис. 12.11. Отчет «Счет», открытый в базе данных

    • на вкладке Презентация (Presentation) с помощью переключателей можно выбрать формат представления Web-страницы: обрабатываемый на стороне клиента HTML или на стороне сервера ASP. Если экспортируемый объект содержит рисунки, которые необходимо включить в результирующий документ, можно указать имя папки, в которой они расположены. На этой же вкладке есть поле для ввода имени файла XSL с описанием оформления страницы. Если указанный файл не существует, Access 2002 создаст файл в формате XSL описанием внешнего представления документа (разработчик может использовать его в дальнейшем как основу для разработки файла в формате XSLT для преобразования документа XML в другой формат).

    Если потребуется дополнительная информация о представлении данных в формате XML, нажмите кнопку Справка (Help). Информацию о разработке и преобразовании документов XML можно найти на Web-узле Microsoft для разработчиков: http://msdn.microsoft.com/ .

    Рис. 12.12. Отчет «Счет», данные которого преобразованы в формат XML, открытый в Internet Explorer

    1. Нажмите кнопку ОК.
    2. Если предложенные параметры преобразования не были изменены, в результате будут созданы три файла: XML — с данными, XSL — со стилями и НТМ — с представлением преобразованного объекта. Чтобы открыть полученную Web-страницу, требуется открыть в Internet Explorer файл НТМ или ASP, в зависимости от того, какой формат представления был выбран..

    К сожалению, подчиненные формы и отчеты, а также связанные рисунки не будут добавлены в документ XML, полученный из объекта базы данных. Однако простые объекты с внедренными рисунками, экспортированные в формат XML, будут выглядеть практически точно так же, как исходные в Access. Вы можете в этом убедиться, сравнив, к примеру, исходный и преобразованный в формат XML отчет «Счет» (Invoice) из базы данных «Борей» (Northwind) (рис. 12.11 и 12.12).

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

    Замечание

    Поскольку сами данные, содержащиеся в таком документе Web, полностью хранятся ‘в файле XML, нет нужды в доступе к базе данных, из которой изначально были взяты эти данные (как, например, и в случае преобразования отчета в формат XML). Это означает, что для обеспечения доступа к такому документу достаточно поместить только упомянутый набор файлов, содержащих описание этого документа, на сервер Web. С другой стороны, это означает, что изменение данных в таком документе возможно лишь с помощью приложений, имеющих доступ к файлу XML и способных воспринять этот формат.

    Простой экспорт в Excel XML

    При разработке системы электронного документооборота потребовалось реализовать функции для экспорта данных в популярных форматах. В частности, в формате Microsoft Excel. Требования к экспорту были довольно простые – экспортировать данные с минимумом форматирования, т.е. никаких объединенных ячеек, игр со шрифтами и т.п. Форматы экспорта XLSX и Excel XML.

    В данном случае расскажу про Excel XML.

    Итак, в любой системе оперирующей табличными данными раной или поздно возникает потребность экспорта данных. Цели экспорта разные:

    • передача данных в табличном виде
    • анализ данных в соотв. системах
    • построение диаграмм
    • построение сводных таблиц и т.п.

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

    Задача

    Технические требования сформулировал тривиально:

    • Оформить экспортирующий механизм в виде автономного класса
    • Реализовать в классе набор функций для записи значений ячеек и ряда
    • Возможность работы с неограниченным объемом данных.

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

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

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

    Помимо описанных требований, понадобилось добавить сервисные функции:

    • Включение автофильтра
    • Сжатия файла в zip.

    Реализация

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

    Правда, именно в этой функции используются сущности системы документооборота — organization (организация) и user (пользователь). Заменить эти сущности на, скажем, строковые значения, не проблема.

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

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

    Но вот запись рядов – процесс поинтереснее. Класс должен работать быстро и обрабатывать неограниченный объем данных, ведь записей может быть тысяч сто или даже миллион! Хочешь скорости – работай с памятью, хочешь неограниченный объем данных – работай с диском. Чтобы помирить требования, реализовал функции resetRow и flushRow.
    Первая – очищает текущий ряд, после чего его снова можно наполнять данными, а вторая – записывает текущий ряд в открытый файл на диск. Их совместное использование позволяет выдерживать баланс между скоростью и объемом используемой памяти.

    Каждая ячейка записывается функцией соответствующей типу данных, а именно appendCellxxx, где xxx – тип данных. Допустимые типы данных: Num, String, Real, DateTime, Date, Time, Link. Пример функции для записи числового значения:

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

    Применение

    Использование описанного класса основано на экспорте данных с помощью провайдера CArrayDataProvider. Однако, предполагая, что объем экспортируемых данных может оказаться очень большим применен специальный итератор CDataProviderIterator, который перебирает возвращаемые данные по 100 записей (можно указать иное число записей).

    В моем случае, каждый ряд записывается на диск, что, пока, является вполне приемлемым, но в будущем, возможно, потребует изменений. Например, будет разумно сохранять не каждый ряд, а каждый десяток или даже сотню рядов за раз. Тогда скорость экспорта увеличится.

    Скорость

    Кстати, на собственном опыте убедился, как важно предполагать возможность существования больших объемов данных при пакетной операции, такой как экспорт.
    Изначально, пытался осуществлять экспорт данных используя CActiveDataProvider, что требовало при экспорте 1000 записей порядка 240 секунд! Изменив запрос так, чтобы использовать CArrayDataProvider сократил время экспорта 1000 записей до 0.5 секунды!
    Специально для этой публикации замерил показатели экспорта.
    Экспортировал 1626 записей с 9 атрибутами, представляющих собой информацию о закрытых инцидентах (см. ITSM).

    Исходный вид экспортируемой таблицы

    (извините, картинка исчезает после публикации)

    Результат

    (извините, картинка исчезает после публикации)

    Показатели экспорта

    Объем конечного файла: 1 312 269
    Объем сжатого файла: 141 762
    Затраченное время: примерно 0.5 сек

    Кому интересно, может получить исходный код моего класса AlxdExportExcelXML безвозмездно. Только надо не забыть поправить функцию writeDocumentProperties, чтобы отвязаться от сущностей системы документооборота organization и user, или использовать свои аналогичные сущности с соответствующими свойствами.

  • Борис Аладышкин/ автор статьи

    Приветствую! Я являюсь руководителем данного проекта и занимаюсь его наполнением. Здесь я стараюсь собирать и публиковать максимально полный и интересный контент на темы связанные с современными технологиями и программным обеспечением. Уверен вы найдете для себя немало полезной информации. С уважением, Борис Аладышкин.

    Понравилась статья? Поделиться с друзьями:
    Itsovet61.ru
    Добавить комментарий

    ;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: