2016-10-08 6 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; 
をしようとしたと確信しています

しかし、あなたもしました

XML.prettyPrinting = false 
+0

私はtoRawString()の行に沿った何かのメソッドを探していました。私はこれらのフラグをfalseに設定することで(同じくignoreProcessingInstructions)、私は同じ効果を得ることができるかもしれないと思っていますが、インポートする前とtoStringメソッドを呼び出すときにこれらのフラグを設定する必要があります。 –

+0

@ 1.21ギガワットなぜあなたがチェックアウトして結果を取り戻さないのですか? –

+0

これらの値をすべて設定すると、できるだけ元に近いものが返されるようです。 –

関連する問題