html文件中引入js文件,顯示亂碼!
js文件為utf-8 編碼(無bom) ,此時只要將js文件轉成utf-8 BOM編碼就可以解決了
可以使用notepad++轉碼
也可以使用下面的python代碼批量轉碼
# -*- 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的時候,才進行轉碼 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+"http://"+fpath) and fpath.endswith('.js')] dpaths = [dpath for dpath in os.listdir(dir) if os.path.isdir(dir+"http://"+dpath)] for f in fpaths: convert(dir+"http://"+f,'utf-8','UTF-8-SIG') for d in dpaths: print(d) main(dir+"http://"+d) if __name__ == "__main__": main('目錄') 總結
以上所述是小編給大家介紹的python解決js文件utf-8編碼亂碼問題,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對武林站長站網站的支持!
新聞熱點
疑難解答