0
xml 파일에서 노드를 제거하려면 delete 키워드를 사용하려고하는데 일반 텍스트는 작동하지 않습니다.xml 노드는 "delete"를 호출 함에도 불구하고 삭제되지 않습니다
다음은 내가 작업하고있는 것을 보여줍니다. 모든 노드에는 "deleteme"라는 자식이 있습니다. 그 값이 1이면 xml 파일에서 제거하고 싶습니다. 그 밖의 무엇이라도 나는 그것을두고 싶다. delete 메소드는 명확하게 gettig 호출이지만 효과가 없습니다. 액션
var xmlList:XMLList=_sourceXML.i;
for (var j:int=0; j < _xmlList.length(); j++)
{
if (xmlList[j].deleteme== 1)
{
delete xmlList[j];
}
}
//breakpoint here. xmlList still contains nodes that should have been deleted
xmlListColl=new XMLListCollection(xmlList);
xmlListColl.refresh()
편집
내가 전에와 루프에 대한 삭제 길이가 실제로 다른 후의 XMLList 아이폰에 추적 경우
<?xml version="1.0" encoding="utf-8"?>
<stuff>
<i>
<deleteme>
0
</deleteme>
</i>
<i>
<deleteme>
1
</deleteme>
</i>
<i>
<deleteme>
0
</deleteme>
</i>
</stuff>
. xmllistcollection에 전달 된 xmllist가 삭제되지 않은 노드가있는 이유가 있습니다. 나 한테 이해가 안돼.
편집 2
다음은 원하는 결과를 제공한다. 나는 아직도 이전 방법이 효과가 없었던 이유를 알고 싶다.
for (var j:int=0; j < xmlList.length(); j++)
{
//trace(xmlList[j].deleteme)
if (xmlList[j].deleteme!=1)
{
//delete xmlList[j];
xmlListColl.addItem(xmlList[j])
}
}
나는 바보 같지만 마지막에 새 파일을 저장한다고 확신합니까? – Manatherin
문제점을보다 자세하게 표시하도록 내 질문이 업데이트되었습니다. 나는 내가 사용하려고하는 xmllist가 내가 완벽하다고 느끼는 – dubbeat