Изменить текстовый узел Matlab - PullRequest
0 голосов
/ 02 октября 2018

Я работаю с XML-файлом в MatLab и хочу изменить текстовое значение узла.

Скажем, у меня есть XML-файл, подобный следующему:

<?xml version="1.0" encoding="UTF-8"?>
<SetBeam>
 <ControlPoints>
  <Cp>
   <Mu>2</Mu>
   <GantryRtn>40</GantryRtn>
  </Cp>
 </ControlPoints>
</SetBeam>

Что яхочу сделать это изменить значение 2 узла <Mu> на 4.

Я попытался сделать это:

xmlDoc.getElementsByTagName('Mu').item(0).childNodes(0).nodeValue = '4'

... но это не сработало.

Есть ли другая команда, чем nodeValue, которую я должен использовать в Matlab?

1 Ответ

0 голосов
/ 03 октября 2018

Вот простой способ без использования внешних библиотек.setTextContent работает.

xmlDoc = xmlread('sample.xml');

xmlDoc.getElementsByTagName('Mu').item(0).setTextContent('4');

% Create a new xml file and for checking that Mu value has changed
xmlwrite('new.xml', xmlDoc)

Я тестировал в R2018b.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...