52 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
			
		
		
	
	
			52 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
| import os
 | ||
| 
 | ||
| 
 | ||
| 
 | ||
| # 找到指定后缀的文件
 | ||
| def find_type(path:str,fix:str):
 | ||
|     # path = os.getcwd()
 | ||
|     # print("path",path)
 | ||
|     list=os.listdir(path)
 | ||
|     # print("list",list)
 | ||
|     file_list=[]
 | ||
|     for i in list:
 | ||
|         ps=os.path.join(path, i)
 | ||
|         if os.path.isdir(ps):
 | ||
|             # print("path join",ps)
 | ||
|             file_list+=find_type(ps,fix)
 | ||
|         else:
 | ||
|             if(ps[-len(fix):]==fix):
 | ||
|                 file_list.append(ps)
 | ||
|     # print("file_list", file_list)
 | ||
|     return file_list
 | ||
| 
 | ||
| 
 | ||
| 
 | ||
| def conv(file:str):
 | ||
|     s=""
 | ||
|     try:
 | ||
|         with open(file,encoding="gb2312") as f:
 | ||
|             s=f.read()
 | ||
|         os.remove(file)
 | ||
|         with open(file,mode="w+",encoding="utf-8") as f:
 | ||
|             f.write(s)
 | ||
|     except Exception as e:
 | ||
|         print("conv failed",file)
 | ||
| 
 | ||
| def run_conv(path:list):
 | ||
|     files=[]
 | ||
|     for i in path:
 | ||
|         files+=find_type(i,".c")
 | ||
|         files+=find_type(i,".h")
 | ||
|     print("find files:",len(files))
 | ||
|     for i in files:
 | ||
|         conv(i)
 | ||
| 
 | ||
| 
 | ||
| 
 | ||
| 
 | ||
| 
 | ||
| # 把此文件放到要转码的文件夹下,编码转化为utf-8
 | ||
| if __name__ == "__main__":
 | ||
|     run_conv(["./"])
 | 
