最近一直在糾纏Ruby的字符串編碼問題,其中就涉及到了CP936、CP950和CP951等代碼頁的碼表。想說與其去翻不知道靠譜與否的資料,不如直接從系統里的NLS文件中提取數據,這又牽涉到了NLS的文件格式問題。
網上能找到的NLS文件格式信息很少,Konstantin Kazarnovsky童鞋在2002年寫的一篇是其中最詳細的了。不過比對一下c_936.nls等雙字節編碼發現,那篇東西錯處還是不少,表格也很不知所云。于是打開WinHex猜了老半天,算是有了一點成果吧。
注:NT和非NT系統的NLS文件格式有所不同,下面的內容只適用于NT系統內的NLS文件。
百度空間的編輯功能實在讓人蛋疼,還是截圖吧!
新聞熱點
疑難解答