簡(jiǎn)介
Jchardet是OpenAtom OpenHarmony(以下簡(jiǎn)稱“OpenHarmony”)系統(tǒng)的一款檢測(cè)文本編碼的組件。當(dāng)上傳一個(gè)文件時(shí),組件可以檢測(cè)并輸出該文件中文本使用的編碼方式。
支持的編碼格式有:ASCII編碼、UTF-8編碼、UTF-16LE編碼、Shift-JIS編碼、ISO-2022-JP編碼、ISO-2022-CN編碼、ISO-2022-KR編碼、Big5編碼、UTF-16BE編碼、x-euc-tw編碼、EUC-KR編碼、ECU-JP編碼、GB18030編碼、HZ-GB-2312編碼、Windows-1252編碼、GB2312編碼。
?
開發(fā)環(huán)境
安裝IDE:支持DevEco Studio 3.0 Release(Build Version 3.0.0.993)版本。 安裝SDK:OpenHarmony API version 8及以上版本。
使用方法
需要先配置OpenHarmony npm倉(cāng),請(qǐng)參考安裝教程
https://gitee.com/openharmony-tpc/docs/blob/master/OpenHarmony_npm_usage.md
1. 下載jchardet組件
npminstall@ohos/jchardet–-save2. 在page頁(yè)面導(dǎo)入。
import {nsICharsetDetectionObserver, nsDetector,nsPSMDetector}from'@ohos/jchardet/3. 初始化編碼檢測(cè)器。
//lang為輸入的語(yǔ)言種類 //0 => All //1 => Japanese //2 => Chinese //3 => Simplified Chinese //4 => Traditional Chinese //5 => Korean //6 => Dont know (default) letdet:nsDetector=newnsDetector(lang);4. 在檢測(cè)器的初始化函數(shù)中定義回調(diào)函數(shù),接受編碼檢測(cè)結(jié)果。
det.Init(new class implements nsICharsetDetectionObserver { Notify(charset: string): void { console.log("CHARSET = " + charset); } })4.1 向編碼檢測(cè)器提供數(shù)據(jù),首選判斷是否Ascii編碼,如果是Ascii編碼,則程序結(jié)束。
let byteData = new Int8Array(buf);//buf為文件的ArrayBuffer letisAscii:boolean=det.isAscii(byteData);4.2 如果檢測(cè)到某一種編碼,則進(jìn)去初始化時(shí)定義的回調(diào),程序結(jié)束。
letdone:boolean=det.DoIt(byteData,false);4.3 如果檢測(cè)到多種編碼,則獲取編碼列表,程序結(jié)束。
letprob:Array=det.getProbableCharsets();
結(jié)語(yǔ)
通過本篇文章介紹,您對(duì)OpenHarmony Jchardet組件應(yīng)該有了初步的了解。我們所有的源碼和指導(dǎo)文檔都已經(jīng)開源,如果您對(duì)本篇文章內(nèi)容以及所實(shí)現(xiàn)的Demo感興趣,可以根據(jù)本篇文章介紹自行下載OpenHarmony Jchardet源碼(https://gitee.com/openharmony-sig/jchardet)進(jìn)行研究和使用。同時(shí)也歡迎更多開發(fā)者與我們共享開發(fā)成果,分享技術(shù)解讀與經(jīng)驗(yàn)心得。
-
編碼
+關(guān)注
關(guān)注
6文章
942瀏覽量
54826 -
SDK
+關(guān)注
關(guān)注
3文章
1036瀏覽量
45936 -
OpenHarmony
+關(guān)注
關(guān)注
25文章
3722瀏覽量
16313
原文標(biāo)題:Jchardet——支持檢測(cè)并輸出文件編碼方式的組件
文章出處:【微信號(hào):gh_e4f28cfa3159,微信公眾號(hào):OpenAtom OpenHarmony】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論