Get xml data from web into Matlab struct using webread and readstruct

조회 수: 3 (최근 30일)
Faisal
Faisal 2024년 10월 4일
답변: Animesh 2024년 10월 4일
I have been getting data from a web API, which returns the data in xml format. I can parse this into a Matlab struct, but only by first saving the char array to a file and then reading it with readstruct.
The below works, but is there any way to do this without writing and reading a file unnecessarily? Either by passing the char array to readstruct or having webread output a struct directly (like it does when the web response is json)?
webresponse = webread(url, queryname, queryvalue);
name1 = [tempname(),'.xml'];
writelines(webresponse, name1);
out = readstruct(name1);

채택된 답변

Animesh
Animesh 2024년 10월 4일
To import XML data directly into a struct, you can use the "xml2struct" function, which is available on the MATLAB File Exchange. Here's how you can do it:
% Make sure that xml2struct is in your path
webresponse = webread(url, queryname, queryvalue);
out = xml2struct(webresponse);
Here is the link to the File Exchange page for "xml2struct":

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 String Parsing에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by