how to Read Txt file(XML format) in Matlab ?

8 次查看(过去 30 天)
Lets assume I have text file name 'Text.txt' and I have below data in it,
<Name>
New_Model
</Name>
<Model>
Model1.slx
Model2.slx
Model3.slx
</Model>
Now, inside matlab, I want to open this file with read mode.
And I want to extract the name 'New_Model' and 'Model1.slx', 'Model2.slx' and 'Model3.slx'
how can extract these name using a more general way?
Like between <Name> and </Name> there is a file name. I should be able to extract the name from this
and between <Models> and </Models> there are 3 model names. So, I should be able to extract the names of these models.
I have tried the specific way as below,
fileID = fopen('Text.txt','r');
model_s = fscanf(fileID,'<Name> %s </Name>')
model1 = fscanf(fileID,'%*s\n %s',1)
model2 = fscanf(fileID,'%s\n %*s',1)
model3 = fscanf(fileID,'%s\n %*s',1)
fclose(fileID)
Now, looking for a general way to do it. Like I have dine it above in the case of <Name>.
  2 个评论
Shiv Nileshkumar Matliwala
Hello David,
I have already uploaded the content in the question. The file name is Text.txt and it has the above content in it. It is just a simple text file with content as below,
<Name>
New_Model
</Name>
<Model>
Model1.slx
Model2.slx
Model3.slx
</Model>
Now here just I want to extract New_Model and store it is variable 'name' and Model1.slx, Model2.slx and Model3.slx and store it in variable 'models' for example. but only by using this <Name> and </Name>, So whatever is there between this two lines, It is my 'name' and whatever is there between <Model> and </Model> lines, those are my three different model names 'models'.

请先登录,再进行评论。

回答(1 个)

Fangjun Jiang
Fangjun Jiang 2022-11-28

类别

Help CenterFile Exchange 中查找有关 Low-Level File I/O 的更多信息

产品


版本

R2020b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by