flash
  • actionscript
  • 2011-05-23 44 views 1 likes 
    1

    我有一個XML文件,我必須硬編碼到AS(是的,我必須)。我想分配這個XML到一個字符串,但由於某種原因在XML文檔聲明分配?!爲什麼動作腳本只將一段字符串賦值給變量?

    var xmlDoc:String = '<?xml version="1.0" encoding="UTF-8"?>'; 
        xmlDoc += '<?dctm xml_app=" ...... 
    

    當我描繪出xmlDoc中的字符串我總是隻得到 「<?XML版本=」 1.0" 編碼= 「UTF-8」?>「

    我試圖把整個文檔中的一個字符串被's圍繞並且像上面那樣對字符串進行了簡化。爲什麼字符串var只能被分配到第一行?

    我得到的文件時,試圖加載XML文檔直接

    var xmlDocument:XML = new XML(); 
        xmlDocument.load("myxml.xml"); 
    
        xmlDocument.onLoad(success:Boolean) 
        { 
        if(success) 
        { 
        trace(xmlDocument.toString()); //Just the first line is printed 
        } 
    
        } 
    

    感謝

    回答

    1

    夫婦的事情我跟你貼

    首先你需要使用空格問題XML的數量有限見

    //最後的空間?

    var xmlDoc:String = '<?xml version="1.0" encoding="UTF-8"?>'; 
    //should be 
    var xmlDoc:String = '<?xml version="1.0" encoding="UTF-8" ?>'; 
    

    其次,我忘記了它叫什麼,但在你的第二行上,你是從一個開始?再次在那裏,這應該是你的根節點定義

    // this is bad 
        xmlDoc += '<?dctm xml_app=" ...... 
    // should be assuming dctm is your node name 
        xmlDoc += '<dctm xml_app=" ...... 
    

    概括起來保持你的間距的眼睛和你的節點名不使用問號。

    還試圖逃跑或你將不得不以後,如果你使用CDATA

    var xmlDoc:String = "<?xml version=\"1.0\" encoding=\"UTF-8\" ?>"; 
    
    +0

    @Marty華萊士TY問題 – 2011-05-24 00:29:06

    2

    爲什麼你不把它分配給一個XML變量相同的結果..?

    var xml:XML = 
    <shop> 
        <item id="10"> 
         <price>20</price> 
        </item> 
    </shop>; 
    

    貌似你試圖使用AS2。

    你需要像這樣與this更換xmlDocument.toString()

    var xml:XML = new XML(); 
    
    xml.onLoad = function(success:Boolean):Void 
    { 
        if(success) 
        { 
         trace(this); 
        } 
    } 
    
    xml.load("file.xml"); 
    
    相關問題