可惡的bom格式

2021-09-06 04:18:26 字數 724 閱讀 6140

晚上用sax解析xml,費了半天勁寫的程式一跑就報錯:saxparseexception: content is not allowed in prolog.

上網找了半天,發現可能的原因是xml檔案被加了bom標記了.於是用editplus將xml檔案開啟,然後重新儲存為utf8無bom格式.

然後重新編譯,然後果然沒報錯了.

據說dom4j1.6解決了bom問題.不過sax呢?貌似還不行哦.

最後在補充下bom的知識:

bom——byte order mark,就是位元組序標記。在這裡找到一段關於bom的說明:

在ucs 編碼中有乙個叫做"zero width no-break space"的字元,它的編碼是feff。而fffe在ucs中是不存在的字元,所以不應該出現在實際傳輸中。ucs規範建議我們在傳輸位元組流前,先傳輸字元"zero width no-break space"。這樣如果接收者收到feff,就表明這個位元組流是big-endian的;如果收到fffe,就表明這個位元組流是little-endian的。因此字元"zero width no-break space"又被稱作bom。

utf-8不需要bom來表明位元組順序,但可以用bom來表明編碼方式。字元"zero width no-break space"的utf-8編碼是ef bb bf。所以如果接收者收到以ef bb bf開頭的位元組流,就知道這是utf-8編碼了。

windows就是使用bom來標記文字檔案的編碼方式的。

可惡的控制項

safeengine.dll seh changepassword 更改儲存介質的密碼 seh clearsession 清除環境變數 seh decryptdata 用對稱演算法 sdbi 解密資料 seh decryptdataex 用對稱演算法解密應用資料 擴充套件 seh digest 摘要...

可惡的病毒

今天中毒了,一開始就是發現norton的防火牆的cpu佔用率居高不下,後來發現中了狂發郵件的病毒。it來整過之後,依然無效。檢查system32目錄,發現有幾個檔案是今天才建立的,比較可以。看了看程序,有個wmiconf.exe殺掉後就不狂發郵件了。但單純刪除這個檔案無效,過一段時間還是會出來。查遍...

可惡的木馬

今天發現 執行錯誤,原來的好多網頁中都有 這兩段 也就是所謂的掛馬。var cooka new string document.cookie var then new date var cookname 9b4a4c5ebf042c02 then.settime then.gettime 30 60...