python解決js文件utf-8編碼亂碼問題(推薦)
更新時間:2018年05月02日 11:28:18 作者:雨夜星辰03
這篇文章主要介紹了python解決js文件utf-8編碼亂碼問題,非常不錯,具有參考借鑒價值,需要的朋友可以參考下
html文件中引入js文件,顯示亂碼!
js文件為utf-8 編碼(無bom) ,此時只要將js文件轉(zhuǎn)成utf-8 BOM編碼就可以解決了
可以使用notepad++轉(zhuǎn)碼
也可以使用下面的python代碼批量轉(zhuǎn)碼
# -*- coding:utf-8 -*-
import os,sys
import chardet
def convert( filename, in_enc = "GBK", out_enc="UTF-8" ):
try:
print("convert " + filename)
f = open(filename,'rb')
content = f.read()
result = chardet.detect(content)#通過chardet.detect獲取當前文件的編碼格式串,返回類型為字典類型
print(result)
f.close()
coding = result.get('encoding')#獲取encoding的值[編碼格式]
if coding != 'UTF-8-SIG' and coding == 'utf-8':#文件格式如果是utf-8的時候,才進行轉(zhuǎn)碼
print(coding + " to "+ out_enc +"!")
new_content = content.decode(in_enc).encode(out_enc)
f = open(filename, 'wb')
f.write(new_content)
f.close()
print(" done")
else:
print(coding)
except IOError as e:
# except:
print(e)
def explore(dir):
for root, dirs, files in os.walk(dir):
for file in files:
path = os.path.join(root, file)
convert(path)
def main(dir):
if(os.path.isdir(dir)):
fpaths = [fpath for fpath in os.listdir(dir) if os.path.isfile(dir+"\\"+fpath) and fpath.endswith('.js')]
dpaths = [dpath for dpath in os.listdir(dir) if os.path.isdir(dir+"\\"+dpath)]
for f in fpaths:
convert(dir+"\\"+f,'utf-8','UTF-8-SIG')
for d in dpaths:
print(d)
main(dir+"\\"+d)
if __name__ == "__main__":
main('目錄')
總結(jié)
以上所述是小編給大家介紹的python解決js文件utf-8編碼亂碼問題,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
相關文章
python等差數(shù)列求和公式前 100 項的和實例
今天小編就為大家分享一篇python等差數(shù)列求和公式前 100 項的和實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-02-02
利用Python批量導出mysql數(shù)據(jù)庫表結(jié)構的操作實例
這篇文章主要給大家介紹了關于利用Python批量導出mysql數(shù)據(jù)庫表結(jié)構的相關資料,需要的朋友可以參考下2022-08-08
echarts動態(tài)獲取Django數(shù)據(jù)的實現(xiàn)示例
本文主要介紹了echarts動態(tài)獲取Django數(shù)據(jù)的實現(xiàn)示例,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2022-08-08

