python

超轻量级php框架startmvc

python解决js文件utf-8编码乱码问题(推荐)

更新时间:2020-06-01 01:54:02 作者:startmvc
html文件中引入js文件,显示乱码!js文件为utf-8编码(无bom) ,此时只要将js文件转成utf-8BO

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+"\\"+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('目录') 

总结

以上所述是小编给大家介绍的python解决js文件utf-8编码乱码问题,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!

python utf8乱码 python utf 8编码 js utf 8乱码