Запишите узел Объектной модели XML-документов
xmlwrite(filename,DOMnode)
chr = xmlwrite(DOMnode)
Запишите XML-файл, во-первых, создав узел Объектной модели документа (DOM), содержащий данные XML. Затем запишите узел DOM в XML-файл. Итоговый XML-файл должен содержать этот текст.
<?xml version="1.0" encoding="utf-8"?>
<toc version="2.0">
<tocitem target="upslope_product_page.html">Upslope Area Toolbox<!-- Functions -->
<tocitem target="demFlow_help.html">demFlow</tocitem>
<tocitem target="facetFlow_help.html">facetFlow</tocitem>
<tocitem target="flowMatrix_help.html">flowMatrix</tocitem>
<tocitem target="pixelFlow_help.html">pixelFlow</tocitem>
</tocitem>
</toc>
Во-первых, создайте объект узла DOM и корневой элемент, и заполните элементы и атрибуты узла, соответствующего данным XML.
docNode = com.mathworks.xml.XMLUtils.createDocument('toc');
Идентифицируйте корневой элемент и установите атрибут version
.
toc = docNode.getDocumentElement; toc.setAttribute('version','2.0');
Добавьте узел элемента tocitem
для страницы продукта. Каждый элемент tocitem
в этом файле имеет атрибут target
и узел дочернего текста.
product = docNode.createElement('tocitem'); product.setAttribute('target','upslope_product_page.html'); product.appendChild(docNode.createTextNode('Upslope Area Toolbox')); toc.appendChild(product);
Добавьте комментарий.
product.appendChild(docNode.createComment(' Functions '));
Добавьте узел элемента tocitem
для каждой функции, где target
имеет форму function
_help.html
.
functions = {'demFlow','facetFlow','flowMatrix','pixelFlow'}; for idx = 1:numel(functions) curr_node = docNode.createElement('tocitem'); curr_file = [functions{idx} '_help.html']; curr_node.setAttribute('target',curr_file); % Child text is the function name. curr_node.appendChild(docNode.createTextNode(functions{idx})); product.appendChild(curr_node); end
Наконец, экспортируйте узел DOM в XML-файл под названием infoUAT.xml
и просмотрите файл с помощью функции type
.
xmlwrite('infoUAT.xml',docNode); type('infoUAT.xml');
<?xml version="1.0" encoding="utf-8"?> <toc version="2.0"> <tocitem target="upslope_product_page.html">Upslope Area Toolbox<!-- Functions --><tocitem target="demFlow_help.html">demFlow</tocitem> <tocitem target="facetFlow_help.html">facetFlow</tocitem> <tocitem target="flowMatrix_help.html">flowMatrix</tocitem> <tocitem target="pixelFlow_help.html">pixelFlow</tocitem> </tocitem> </toc>
Считайте узел DOM из демонстрационного XML-файла и получите содержимое узла DOM как вектор символов.
Отобразите содержимое демонстрационного XML-файла, и затем импортируйте узел DOM из файла.
sampleXMLfile = 'info.xml';
type(sampleXMLfile)
<productinfo xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="http://www.mathworks.com/namespace/info/v1/info.xsd"> <?xml-stylesheet type="text/xsl" href="http://www.mathworks.com/namespace/info/v1/info.xsl"?> <matlabrelease>R2012a</matlabrelease> <name>Example Manager</name> <type>internal</type> <icon>ApplicationIcon.DEMOS</icon> <list> <listitem> <label>Example Manager</label> <callback>com.mathworks.xwidgets.ExampleManager.showViewer </callback> <icon>ApplicationIcon.DEMOS</icon> </listitem> </list> </productinfo>
DOMnode = xmlread(sampleXMLfile);
Используйте xmlwrite
, чтобы возвратить объект DOMnode
как сериализированный вектор символов.
text = xmlwrite(DOMnode)
text = '<?xml version="1.0" encoding="utf-8"?> <productinfo xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="http://www.mathworks.com/namespace/info/v1/info.xsd"> <?xml-stylesheet type="text/xsl" href="http://www.mathworks.com/namespace/info/v1/info.xsl"?> <matlabrelease>R2012a</matlabrelease> <name>Example Manager</name> <type>internal</type> <icon>ApplicationIcon.DEMOS</icon> <list> <listitem> <label>Example Manager</label> <callback>com.mathworks.xwidgets.ExampleManager.showViewer </callback> <icon>ApplicationIcon.DEMOS</icon> </listitem> </list> </productinfo>'
fileName
FileName Имя файла, заданное как вектор символов или скаляр строки, содержащий имя локального файла или URL.
Типы данных: char | string
DOMnode
— Узел объектной модели документа (DOM)Узел Объектной модели документа (DOM), заданный как объект узла DOM.
Объектная модель документа задана консорциумом Всемирной паутины. Для получения дополнительной информации смотрите то, Что Объектная модель XML-документов (DOM)?.
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.