2007年3月8日 星期四

奇怪的XML...

之前開發一個展示程式時遇到一個問題...
我利用Flex透過Web Service跟後端程式利用XML做資料交換....
另外在一個Flash程式上也會讀到相同一份XML資料...
問題來了,我Flex的程式是最早完成的,所以測試都沒問題,
但是Flash的程式就是沒有辦法讀到同一份XML...
當下以為我Flash程式寫錯了,所以進入漫長的Debug階段...
最後在手賤的情況下發現了bug在哪,原來是XML的編排有問題...
下面有兩段XML碼:
<?xml version="1.0" encoding="utf-8"?>
<catalog>
<item itemId="1">
<name>item1</name>
</item>
<item itemId="2">
<name>item2</name>
</item>
</catalog>

<?xml version="1.0" encoding="utf-8"?><catalog><item itemId="1"><name>item1</name></item><item itemId="2"><name>item2</name><item></catalog>
兩段XML有時麼不一樣呢?答案是沒有,只是有換行跟空白的差別而已...
但是很奇怪的是,第一種有空白有換行的Flex讀的到,Flash就不行了,所以後來全部改用第二種又臭又長的方式...
我本來以為是我用的文字編輯器自己幫我加了一些標籤進去所以造成無法讀取XML,但是很奇怪Flex又讀的到,很玄,問題解決了,但我還是不知道為什麼...

沒有留言: