извлечение данных из XML-файлов с использованием MATLAB - PullRequest
5 голосов
/ 15 июля 2011

Я начинающий программист, пытаюсь выучить MATLAB.Я хочу извлечь числовые данные из множества различных XML-файлов.Числовые элементы данных ограничены тегами и.Как мне написать программу на MATLAB?

Мой алгоритм:

1. Open the folder
2. Look into each of 50 xml files, one at a time
3. Where the tag <HNB.1></HNB.1> exists, copy numerical contents between said tag and write results into a new file
4. The new file name given for step 3 should be the same as the initial file name read in Step 2, being appended with "_data extracted"

пример:

FileName = Stewart.xml
Contents = blah blah blah <HNB.1>2</HNB.1> blah blah
NewFileName = Stewart_data extracted.txt
Contents = 2

Ответы [ 2 ]

8 голосов
/ 15 июля 2011

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

1 голос
/ 12 июля 2016

Предположим, вы хотите прочитать этот файл:

<PositiveSamples numImages="14">
<image numSubRegions="2" filename="TestingScene.jpg">
	<subregion yStart="213" yEnd="683" xStart="1" xEnd="236"/>
	<subregion yStart="196" yEnd="518" xStart="65" xEnd="226"/>
</image>
</PositiveSamples>

Затем в matlab прочитайте содержимое файла следующим образом:

%read xml file
xmlDoc = xmlread('PositiveSamples.xml');

%Get root element
root = xmlDoc.getDocumentElement();

%Read attributevale
numOfImages = root.getAttribute('numImages');
numOfImages = char(numOfImages);   
numOfImages = uint16(eval(numOfImages));
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...