Notepad++批量转换文件编码为UTF8

想实现这个功能,发现notepad++本身自带的宏录制,并不好使,菜单栏的操作貌似并没有录制下来。

于是搜索了下,发现大家都是如下方案:

  1. 选择“插件(P)”->"插件管理..."
  2. 搜索并安装 Python Script。安装后重启Notepad++
    ​​​​​​​
  3. 菜单中选择 “插件(P)”->Python Script->New script.
  4. 命名为convertToUTF8

 

 然后复制以下代码到 convertToUTF8.py文件中: 

import os;
import sys; 
filePathSrc="C:\\decompile\\" # Path to the folder with files to convert 
for root, dirs, files in os.walk(filePathSrc): 
 for fn in files: if fn[-4:] == '.htm': # Specify type of the files 
        notepad.open(root + "\\" + fn) 
        notepad.runMenuCommand("Encoding", "Convert to UTF-8") notepad.save()
        notepad.close()

在网上搜了很多的文章,到处都是Copy的上面这个同样的方法,太不实用了!

  • 每次使用需要改脚本中文件路径,还要修改文件扩展名。
  • 而且这个是英文版notepad++才能执行的。能不能用心点,我们用的都是中文版。

当然也有朋友说,与其写这个脚本还不如下载个软件:

迷你批量更改编码工具_迷你批量更改编码工具下载 - 文件管理 - 非凡软件站

这样↑倒是更简单便捷。

或者,与其蛋疼的在notepad++里面写插件的Python脚本,我还不如抛开他单独写个Python脚本批量转换。

当然,能不能让这个插件和脚本变的实用一点?稍微改造了下下:

#-*- coding: UTF-8 -*- 
import os;
import sys;
fcount = len(notepad.getFiles())
f = 0
while f < fcount:
    notepad.runMenuCommand("编码(N)", "转为 UTF-8 编码")
    notepad.save()
    notepad.close()
    f+=1

用法是这样的:

  1. 用notepad++批量打开我们要修改的文件,不要关掉。
  2. 然后在菜单中“插件(P)”->Python Script->Script->convertToUTF8(选择我们编写的脚本)
    ​​​​​​​

所有文件会批量进行修改,并保存,同时关掉。

这样就是一个通用型的脚本了。下次无论修改何种类型的文件只要全部打开,并执行即可。爽快简单,后续无需修改变动。

猜你喜欢

转载自blog.csdn.net/wangmy1988/article/details/118698647