why do I receive an empty document [#document: null] when I read a xml file with xmlread?

I tried to read a simple xml file {<rows> <row id='0'> <cell>65</cell> </row> <row id='1'> <cell>565</cell> </row> <row id='2'> <cell>6565</cell> </row></rows>} and received [#document: null].

 采纳的回答

I'm not sure why you think that you received an empty document.
The display that you are seeing, [#document: null], consists of two parts. The first part is #document, which is the node name. When you parse XML with xmlread, you always receive a #document node as the top-level node.
>> dom = xmlread('example.xml')
dom =
[#document: null]
>> getNodeName(dom)
ans =
#document
>>
The second part is null, which is the value of the node. null is used to indicate that the node doesn't have a value.
>> getNodeValue(dom)
ans =
[]
>>
A #text node usually has a value. In your example, the text node under the first cell element has a value of '65'.
>> cells = dom.getElementsByTagName('cell');
>> cell = cells.item(0)
cell =
[cell: null]
>> text = cell.item(0)
text =
[#text: 65]
>> getNodeValue(text)
ans =
65
>>

4 个评论

Thank you for the answer. The question was stupid. I had to read more help. I know a little about DOM and found later the answer. However, your answer is useful for me. Now I understand better the logic of Matlab. I'm new in Matlab and document:null disturbed me. I saw that the file was read and I could not understand why document was null.

请先登录,再进行评论。

更多回答(0 个)

类别

帮助中心File Exchange 中查找有关 Data Type Identification 的更多信息

产品

标签

Community Treasure Hunt

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

Start Hunting!

Translated by