4

次のような.XMLファイルがあります。

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Comments</key>
<string></string>
<key>DataSummary</key>
<dict>
    <key>AreaCM2</key>
    <real>2.77</real>
    <key>Dev</key>
    <real>9.48</real>
</dict>
<key>DataValues</key>
<array>
    <real>81</real>
    <real>85</real>
</array>
<key>ROIPoints</key>
<array>
    <string>{65.7414, 58.2929}</string>
    <string>{65.7388, 58.4421}</string>
</array>
</dict>
</plist>

MATLABDataValuesにアクセスして使用したいと考えています。ROIPoints

私は、次のように機能する非常に遠い抽出方法を見つけましたROIPoints

DOMnode = xmlread(pathofxmlfile);
i       = DOMnode.getDocumentElement;
f       = char(i.getTextContent);

fすべての「テキスト」コンテンツを含む文字列です。

f = CommentsDataSummaryAreaCM22.77Dev9.48DataValues8185ROIPoints**{65.7414, 58.2929}{65.7388, 58.4421}

ROIPointsは中かっこで囲まれているため、文字列を操作してそれらを抽出できます。

残念ながら、DataValues水平方向に連結され (8185)、個別に抽出することはできません。

任意のヒント?

4

1 に答える 1

3

matlab central でxml_readを確認してください。xml を読み取り、構造体として出力します (xml ツリーに従います)。ただし、より大きな XML の場合は遅くなる可能性があります。

于 2013-08-02T11:24:54.983 に答える