xml2struct无法访问元素

时间:2012-06-20 15:12:47

标签: matlab

我尝试使用它:

xml2struct

当我使用这个xml时:

<XMLname attrib1="Some value">
    <Element>Some text</Element>
    <DifferentElement attrib2="2">Some more text</DifferentElement>
    <DifferentElement attrib3="2" attrib4="1">Even more text</DifferentElement>
</XMLname>

我可以创建一个结构:

test = xml2struct('C:\bla\bla.xml');

(用课程测试(测试))

看起来像这样:

test =

      Name: 'XMLname'
Attributes: [1x1 struct]
      Data: ''
  Children: [1x7 struct]

但我无法访问:

test.XMLname.Element.Text

我明白了:

???引用不存在的字段'XMLname'。

有什么想法吗?

2 个答案:

答案 0 :(得分:1)

刚刚在R2010b上试过它并且工作正常

>> data=xml2struct('bla.xml')
data = 
    XMLname: [1x1 struct]

>> data.XMLname
ans = 
             Element: [1x1 struct]
    DifferentElement: {[1x1 struct]  [1x1 struct]}
          Attributes: [1x1 struct]

你有可能在matlab路径上的某个地方有一个旧版本的xml2struct吗?确保which xml2struct为您提供所期望的路径

答案 1 :(得分:1)

当我看到你的问题时,我看到了这样的结构

test =

      Name: 'XMLname'
Attributes: [1x1 struct]
      Data: ''
  Children: [1x7 struct]

并尝试读取结构中不存在的组件

test.XMLname.Element.Text

即结构test没有名为XMLname的组件。

我错过了一些明显的东西还是你?