这篇文章主要介绍了python解决js文件utf-8编码乱码问题,非常不错,具有参考借鉴价值,需要的朋友可以参考下
html文件中引入js文件,显示乱码!
js文件为utf-8 编码(无bom) ,此时只要将js文件转成utf-8 BOM编码就可以解决了
可以使用notepad++转码
也可以使用下面的python代码批量转码
立即学习“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编码乱码问题的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号