Запись узла модели объекта XML-документа
xmlwrite( запишет узел Объект Model (DOM) filename,DOMnode)DOMnode в файл filename.
Работа с xmlwrite требует, чтобы вы использовали Java® API для обработки XML (JAXP). Для получения дополнительной информации смотрите https://docs.oracle.com/javase/7/docs/api.
Напишите XML- файл, сначала создав узел Document Объекта Модели (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 = 'sample.xml';
type(sampleXMLfile)<productinfo> <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>
<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 - Имя файлаИмя файла, заданное как вектор символов или строковый скаляр, содержащий имя локального файла или URL-адреса.
Типы данных: char | string
DOMnode - Узел объектной модели документа (DOM)Узел модели объекта документа (DOM), заданный как объект узла DOM.
Модель объекта документа определяется консорциумом World Wide Web. Для получения дополнительной информации смотрите Модель объекта XML-документа.
У вас есть измененная версия этого примера. Вы хотите открыть этот пример с вашими правками?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.