繼續(xù)尋找,在CodeProejct.com找到一篇文章《Reading And Writing " /> 国产精品A8198V久久A片,被高跟鞋调教丨vk,国产精品久久久久久AV免费不卡

天天躁日日躁狠狠躁AV麻豆-天天躁人人躁人人躁狂躁-天天澡夜夜澡人人澡-天天影视香色欲综合网-国产成人女人在线视频观看-国产成人女人视频在线观看

JScript中使用ADODB.Stream判斷文件編碼的代碼

一開始使用ASCII編碼來讀取文本數(shù)據(jù),模擬讀取二進制數(shù)據(jù),但是發(fā)現(xiàn)如果字符編碼大于127時,只會得到小于128的值,相當于和128取余了,因此ASCII編碼是不行的。

繼續(xù)尋找,在CodeProejct.com找到一篇文章《Reading And Writing Binary Files Using JScript》,里面剛好有我需要的內(nèi)容。

其實說來也簡單,就是把編碼換一下,使用437,這個是IBM擴展過的ASCII編碼,把ASCII編碼的最高位也利用起來,將字符集中的字符從128個擴展到256個,而使用這個字符集讀取的字符數(shù)據(jù)就相當于原始二進制數(shù)據(jù)了。

解決了障礙后,就要開始識別文件的編碼了,通過使用ADODB.Stream對象來讀取文件的開始兩個字節(jié),然后根據(jù)這兩個字節(jié)就可以判斷文件編碼是什么了。

UTF-8文件如果帶BOM的話,那么頭兩個字節(jié)就是0xEF、0xBB,再例如Unicode文件的開始兩個字節(jié)是0xFF、0xFE,這些就是判斷文件編碼的依據(jù)。

需要注意的是,在ADODB.Stream讀取字符時,并不是一一對應(yīng)的,也就是說,如果二進制數(shù)據(jù)是0xEF,讀取出來的字符經(jīng)過charCodeAt之后,并不是0xFE,而是另外的值,這個對應(yīng)表可以在上面提到的文章里查到。

程序代碼:
復(fù)制代碼 代碼如下:
function CheckEncoding(filename) { 
    var stream = new ActiveXObject("ADODB.Stream"); 
    stream.Mode = 3; 
    stream.Type = 2; 
    stream.Open(); 
    stream.Charset = "437"; 
    stream.LoadFromFile(filename); 
    var bom = escape(stream.ReadText(2)); 
    switch(bom) { 
        // 0xEF,0xBB => UTF-8 
        case "%u2229%u2557": 
            encoding = "UTF-8"; 
            break; 
        // 0xFF,0xFE => Unicode 
        case "%A0%u25A0": 
        // 0xFE,0xFF => Unicode big endian 
        case "%u25A0%A0": 
            encoding = "Unicode"; 
            break; 
        // 判斷不出來就使用GBK,這樣可以在大多數(shù)情況下正確處理中文 
        default: 
            encoding = "GBK"; 
            break; 
    } 
    stream.Close(); 
    delete stream; 
    stream = null; 
    return encoding; 


這樣,在需要的時候,通過調(diào)用CheckEncoding函數(shù)就可以獲取文件的編碼了。
希望此文對你有所幫助。

JavaScript技術(shù)JScript中使用ADODB.Stream判斷文件編碼的代碼,轉(zhuǎn)載需保留來源!

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 伊人久久大香网 | 日韩av国产av欧美天堂社区 | 亚洲不卡高清免v无码屋 | 神马影院午夜理论二 | 神马伦理2019影院不卡片 | 无码人妻少妇色欲AV一区二区 | 日本G奶乳液汁 | 日本久久道一区二区三区 | 亚洲永久精品ww47 | 蜜桃无码AV视频在线观看 | 和搜子的日子 在线观看 | gogogo视频在线观看 | 4399日本电影完整版在线观看免费 | 国产精品无码久久久久不卡 | 国产又粗又猛又爽黄老大爷 | 天堂无码人妻精品AV一区 | 甜涩性爱下载 | 夜里18款禁用的免费B站动漫 | YELLOW日本动漫高清免费 | jlzz中国jizz日本老师水多 | 日本高清不卡一区久久精品 | 亚洲AV无码国产精品色午夜情 | 国产在线自天天人人 | 依人青青青在线观看 | 欧美日韩精品久久久免费观看 | 男生脱美女内裤内衣动态图 | 国产高清精品自在久久 | 久久久无码精品一区二区三区 | 热久久2018亚洲欧美 | vr亚洲成年网址在线观看 | 97国产成人精品视频 | 激情内射亚洲一区二区三区 | 香蕉久久夜色精品国产小优 | 我与恶魔的h生活ova | 护士美女照片 | 性插图动态图无遮挡 | 青青草A在在观免费线观看 青青草AV国产精品 青青草 久久久 | 0855福利 | 少妇高潮A片特黄久久精品网 | 亚色九九九全国免费视频 | 久久er国产精品免费观看2 |