VS2008打開項目源代碼中有亂碼

 設置:
     菜單-》文件-》高級保存選項-》設置成utf-8編碼

 

今天同事使用VS2005開發的打開VS2003創建的代碼文件,發現中文都成亂碼了。在VS2005的選項裏找了很久,發現一個選項“自動檢測不帶簽名的UTF-8編碼(D)”。選中後重新打開代碼文件,嘻嘻,中文顯示正常了。
什麼是帶簽名和不帶簽名的UTF-8編碼文件呢?所謂簽名是文件頭的3個字節,就是BOM header。帶簽名即文件頭含BOM信息,不帶則沒有。
帶了的好處是,只要支持多編碼的編輯器都能正確識別出文件編碼。 不帶的話,就不一定了,就有可能識別錯別。 由於代碼文件不帶簽名,默認情況下,Visual Studio 2005就不能正常識辨文件的編碼了。
另外還有網友總結了常用文本編輯器對BOM header的處理方法。
UTF-8 BOM header: 是三個字節: EF BB BF。
  1. notepad
   notepad 在保存時,選擇UTF-8 格式,會在文件頭寫上BOM header.
  2. editplus
   文件保存時,選擇UTF-8 格式,不會在文件頭寫上 BOM header.
  3. ultraedit
   ultraedit 對UTF-8 的支持最爲完備。在advanced->configuration中可以
   選擇文件保存時是否寫上BOM header.
  4. vi
   指的是Linux 下的vim, 如果UTF-8 文件開頭有BOM header, 其能夠正常
  顯示UTF-8 編碼,否則,顯示爲亂碼。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章