2016-10-08 2 views
1

XML 문서로 구문 분석되는 XML 문서가 있습니다. 문서의 공백을 보존하기 위해 XML.ignoreWhiteSpace 및 기타 속성을 설정하려고 시도했지만 아무 것도 작동하지 않습니다. node.toString()을 호출하면 공백이 제거되었습니다.노드에서 원래 XML 문자열 값을 가져 오는 방법이 있습니까?

노드의 원래 원시 텍스트를 반환하는 메서드가 있습니까?

원본 : :

<s:textFlow> 

    <flow:TextFlow whiteSpaceCollapse="preserve" version="3.0.0" xmlns:flow="http://ns.adobe.com/textLayout/2008"><flow:p><flow:span>A </flow:span><flow:span flow:fontWeight="bold">line</flow:span></flow:p></flow:TextFlow> 
</s:textFlow> 

출력 :

<s:textFlow> 
    <flow:TextFlow whiteSpaceCollapse="preserve" version="3.0.0" xmlns:flow="http://ns.adobe.com/textLayout/2008"><flow:p><flow:span>A</flow:span><flow:span flow:fontWeight="bold">line</flow:span></flow:p></flow:TextFlow> 
</s:textFlow> 
나는 다음과 같은 XML이있는 경우 나 toString() 또는의 toXMLString()를 사용할 때

는 예를 들어, 같은 반환하지 않습니다

+0

XML 문서를 XML 문서로 구문 분석 하시겠습니까? 파일을 개체로 구문 분석한다는 의미입니까? 너 뭐하니? 코드는 어떻게 생겼습니까? XML 예제? – null

+0

문자열을 새 XML (myValue)에 전달하면 노드가 만들어지고 구조적 XML 객체로 배열됩니다. Flash Builder IDE 디버그 뷰에서 또는 toXMLString()을 호출 할 때 해당 구조가 표시됩니다. 그러나 ignoreWhitespace와 같은 특정 플래그가 설정된 경우 XML은 때로는 대폭 수정되며 때로는 미묘합니다. 원본 원문이 노드 자체에 유지되는지, 그리고 방법이 있는지 알고 싶습니다. –

+0

아마도 런타임에 사용 된 XML 클래스가 업데이트되어 RegExp 엔진이 업데이트 될 수있는 것과 같은 방식으로이 기능과 다른 구문 분석 함수 및 후크가있을 수 있습니다. https://discuss.as3lang.org/t/about-flash-runtime-2016/239. –

답변

1

난 당신이

XML.ignoreWhitespace = false; 
,536을 시도 확신

도 수행 했습니까?

XML.prettyPrinting = false 
+0

나는 toRawString() 행을 따라 뭔가있는 메소드를 찾고 있었다.그 플래그를 false로 설정하여 (또한 ignoreProcessingInstructions) 같은 효과를 얻을 수는 있지만 가져 오기 전에 및 toString 메서드를 호출 할 때 플래그를 설정해야한다고 생각합니다. –

+0

@ 1.21g 와트 왜 체크하지 않고 결과를 얻지 않습니까? –

+0

그 값을 모두 설정하면 가능한 한 원본에 가장 가까운 것을 반환하는 것으로 보입니다. –

관련 문제