XML 非法字符(轉義字符)_Xml教程

      編輯Tag賺U幣

      推薦:powerbuilder(pb)中 xml的應用一例
      powerbuilder中的數據窗口真是好的不得了,工作基本上都是圍繞它做,很高效,這幾天項目上需要用導出xml文件,就用pb9(xml導出導入功能是從powerbuilder9.0增加的功能)做了一個demo以驗證可行性

      如往常一樣,
      客戶發(fā)給我一個xml文件,
      用來更新數碼課堂日程安排——是一個js讀取xml文件達到鼠標經過日歷顯示每日課程安排的效果,有類于Ajax數據讀取(只不過數據是完全靜態(tài)更新)的腳本程序
      由于是兩方來完成整個日程更新(客戶把制作頁面和更新網站分開),
      給我的xml文件總是有問題,
      由于經常做,知道制作方在html代碼水平上還是比較初級,
      所以每次更新前總要對他們給的文件校正,
      果然還是有問題,
      如往常一樣,我檢查文件內容的每個標簽是否完整,
      檢查出一處錯誤,感覺應該OK了,
      可是頁面還是顯示讀取xml數據失敗,
      我又從頭到尾挨個檢查標簽(文件還挺長,我好可憐啊,嗚嗚~~~),
      居然沒有發(fā)現(xiàn)什么錯誤,哎,眼花,郁悶~~~,
      無奈之下,只好將代碼拷出來,
      再挨個拷進去,邊拷邊刷新頁面預覽效果,
      來回好幾回,終于發(fā)現(xiàn)有好幾處代碼都有問題,
      語法上好像沒什么錯誤~~~,標簽完整~~,
      突然發(fā)現(xiàn)在內容里都有“&“,可惡,
      總盯著標簽查半天,忘了可能是內容里的字符沖突,
      替換一下,果然好了,
      為了詳細理解,我上 w3school 查了一下:
      轉義字符
      非法的 XML 字符必須被替換為實體引用(entity reference)。
      在 XML 中有 5 個預定義的實體引用:
      < < 小于
      > > 大于
      & & 和號
      ' ' 省略號
      " " 引號
      注釋:嚴格地講,在 XML 中僅有字符 "<"和"&" 是非法的。省略號、引號和大于號是合法的,但是把它們替換為實體引用是個好的習慣。
      原來如此,真相大白,
      只能怪自己倒霉,也怪自己對XML了解不夠

      分享:存儲于xml中需要的HTML轉義代碼
      在數據提交到數據庫之前的簡單HTML字符轉意,防止javascript惡意代碼,因為項目中用到了輸出為xml,所以在輸出之前還要進行二次轉意,把數據庫中之前加入的br轉義為正常。

      來源:模板無憂//所屬分類:Xml教程/更新時間:2013-04-22
      相關Xml教程