在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 問答/HTML/ 我使用node的fs.readFile讀取的本地一個css文件內(nèi)容中包含了UTF

我使用node的fs.readFile讀取的本地一個css文件內(nèi)容中包含了UTF-8 BOM頭,怎么去除呢?

我使用node的fs.readFile讀取了本地一個css文件內(nèi)容cssData,
然后在頁面的head標簽中創(chuàng)建了style標簽,將cssData賦給了style.innerHtml,
但是樣式?jīng)]生效,我檢查后發(fā)現(xiàn)在style標簽中樣式的最前面多了個:&#65279,上網(wǎng)查了下說時utf-8的bom頭,我輸出了cssData沒發(fā)現(xiàn)有這個,不知道怎么去除這個。請問我該怎么去掉style標簽中的這個BOM頭?

回答
編輯回答
吢丕

1.首先你這個css文件是否是你自己可控的呢?如果是可控的是否按照uft-8 no BOM標準保存一下再讀取就ok了?
2.如果1解決不了,能不能設(shè)置style.innerHtml= str.replace('?','')

2018年6月18日 20:01
編輯回答
何蘇葉

一般包含BOM頭的是在windows下生成的(用諸如記事本之類工具才會添加)
如果這個文件你可以控制,可以自行重新保存為沒有BOM頭的就好。
否則,可以額外采用如下函數(shù)去除

function readText(pathname) { //去除utf-8 BOM的文本文件讀取
    var bin = fs.readFileSync(pathname);

    if (bin[0] === 0xEF && bin[1] === 0xBB && bin[2] === 0xBF) {
        bin = bin.slice(3);
    }

    return bin.toString('utf-8');
}
2018年3月29日 04:26
編輯回答
喵小咪

我剛試了一下你這個方法解決了我的問題,但是我換成異步: fs.readFile() 的就不行,這是為什么呢。如果時異步我該怎么操作?

2017年5月11日 19:55