美文网首页
python批量查看修改文件编码

python批量查看修改文件编码

作者: 岁月静好忄 | 来源:发表于2020-04-10 14:45 被阅读0次

使用python批量查看文件编码,或者批量修改文件编码

代码

#!/usr/bin/python
import os
import chardet

# 获得所有txt(根据个人需求更改)文件的路径,传入根目录路径
def find_all_file(path: str) -> str:
  for root, dirs, files in os.walk(path):
    for f in files:
      if f.endswith('.txt'):#根据个人需求更改
        fullname = os.path.join(root, f)
        yield fullname
      pass
    pass
  pass

# 判断是不是utf-8编码方式
def judge_coding(path: str) -> dict:
  with open(path, 'rb') as f:
    c = chardet.detect(f.read())
  if c['encoding'] != 'utf-8':
    return c
    
# 修改文件编码方式
def change_to_utf_file(path: str):
  for i in find_all_file(path):
    c = judge_coding(i)
    if c:
      change(i, c['encoding'])
      print("{} 编码方式已从{}改为 utf-8".format(i, c['encoding']))

# 执行修改操作
def change(path: str, coding: str):
  with open(path, 'r', encoding=coding) as f:
    text = f.read()
  with open(path, 'w', encoding='utf-8') as f:
    f.write(text)
    
# 查看所有文件编码方式
def check(path: str):
  for i in find_all_file(path):
    with open(i, 'rb') as f:
      print(chardet.detect(f.read())['encoding'], ': ', i)

def main():
  my_path = 'D:/Project/python/Chardet/test'
  #根据需求打开相应注释
  #change_to_utf_file(my_path)#修改文件编码,修改的时候打开注释
  #check(my_path)#查看文件编码,查看的时候打开注释
  
if __name__ == '__main__':
  main()

结果

查看文件编码
image.png
执行编码转换
image.png
再次查看转换后的编码
image.png

相关文章

  • python批量查看修改文件编码

    使用python批量查看文件编码,或者批量修改文件编码 代码 结果 查看文件编码 执行编码转换 再次查看转换后的编码

  • 工作中使用到的liunx命令

    批量查找文件夹下面的文件内容: 批量修改文件夹下文件内容: 批量杀死python执行的进程: 查看是否安装了某个软...

  • python 批量修改文件名

    python 批量修改文件名

  • python 小工具

    python 批量更改文编码import os# 更改文件编码def recoding(filename): ...

  • MySQL中文乱码

    查看编码 修改编码 这种方式修改重启之后就会复原,不推荐 修改配置文件的编码 修改/etc/my.cnf配置文件,...

  • 批量修改文件编码

    1. 功能 批量将某几种编码的文件转变成另一种编码的文件。例如将GBK编码的文件转成UTF-8编码的文件 2. 代...

  • mysql编码

    查看编码 查看数据库编码 查看表编码 查看字段编码 修改编码格式 修改数据库编码格式 修改表编码 修改字段编码

  • python 高级方法

    Python的字符串类型 字符编码方法 查看Python中的字符串编码名称,查看系统的编码 源文件字符集编码声明:...

  • Python查看文件编码

    刚刚使用pandas加载一个文件,结果编码报错了,但是我用notepad++打开的时候,显示就是UTF-8的编码,...

  • 利用python批量修改文件名

    最近比较苦恼批量修改文件的名字,文件名字还要根据表格对应进行修改,最近刚接触python,所以想到利用python...

网友评论

      本文标题:python批量查看修改文件编码

      本文链接:https://www.haomeiwen.com/subject/xuermhtx.html