Mathworks 사이트에서 같은 질문을했습니다.함수에 전달 된 기존 부모 노드에 자식 노드를 추가하려면 어떻게합니까?
함수에 XML 구조를 보내고 새 노드를 추가하고 수정 된 구조를 반환하려고합니다. 이는 추가되는 하위 구조가 많은 '.xml'파일에 매우 공통적 일 것이므로 매번 동일한 코드를 다시 작성하기를 원하지 않기 때문입니다.
나는 다음과 같은 작품 함수에 아닙니다 경우
docNode = com.mathworks.xml.XMLUtils.createDocument('ugcs-Transfer');
parent_node = docNode.createElement('parent')
docNode.appendChild(parent_node)
docNode = myFunction(docNode)
이
이 기능은에 아이를 추가하지 않습니다 :이 같은 함수에 전달하려고하면
docNode = com.mathworks.xml.XMLUtils.createDocument('ugcs-Transfer');
parent_node = docNode.createElement('parent')
docNode.appendChild(parent_node)
child_node = docNode.createElement('child');
parent_node.appendChild(child_node);
부모 노드는 :
Z = my_function(docNode)
child_node = docNode.createElement('child');
parent_node.appendChild(child_node); % This line produces an error:
%Undefined variable "parent_node" or ...
%class "parent_node.appendChild".
Z = docNode
end
원하는 최종 상태가 될 것이다 :
,<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<parent>
<child>
어떤 도움을 주시면 감사하겠습니다,
바울은
감사에서 볼 수 있습니다. 동료가이 작업을 수행하는 또 다른 방법을 제공했습니다. parent_node = docNode1.getElementsByTagName ('Parent'). item (0) –
@Paul_Sponagle 맞습니다. 나는 이것을 성가심으로 생각하고 실제로 이런 종류의 물건에 대한 재귀 적 방법을 선호한다 (이것은 그렇지 않다). 그러나, 그것은 당신의 방법으로도 가능합니다 (때로는 그렇게해야합니다). 각 부모가 여러 자녀를 가질 수 있다는 것을 명심하십시오. 그러면 모든 어린이들 사이에서 검색을해야하며 모두 괜찮을 것입니다. 또한, 아이를 다시 돌려 주더라도 아이를 사용하지 않아도되지만, 아이를 사용하려면 정말로 행복 할 것입니다. – patrik