json为txt文本加密

我们知道json是一种数据传输的加密格式

这里为txt格式的文本加密(纯属无聊)

 

写的比较凌乱,查找你输入的两个文件夹下面的所有txt文件(包含下一级文件);

运行时要注意,别把重要文件给加密了

 1 import os.path, time
 2 import json
 3 import glob
 4 import os
 5 import time
 6 
 7 
 8 def wenjian():          #查找每个文件夹下面的文件
 9     wen=[]
10     
11     for i in rootdir:
12     
13         for parent,dirnames,filenames in os.walk(i):  
14          
15             #case 2  
16             for filename in filenames:    
17                  
18                 wen.append(os.path.join(parent,filename))
19                 
20     return wen
21     
22 
23 def txt():           #在下面的基础上查找txt文件
24     a=[]
25     
26     for file_name in wen:
27         if file_name[-4:]=='.txt':
28             a.append(file_name)
29             
30     return a
31     
32 
33 
34 def jiami():
35     
36     for i in a:      #将所有txt文件加密
37         
38         f=open(i)
39         content=f.read()
40         content2=json.dumps(content)
41         f.close()
42 
43         with open(i, 'w') as f:
44     
45             f.write(content2)
46 
47     print('加密成功')
48 
49 
50 password=input('输入管理员密码:')
51 if password == '123456':
52         
53     rootdir=[]
54     val=input('输入关键路径:')
55     num=input('输入加密的次数:')
56     rootdir.append(val)  
57     for x in range(int(num)):
58         wen=wenjian()
59         a=txt()
60         jiami()
61 
62 else:
63     print("密码错误5秒后退出")
64     time.sleep(5)
65     exit()

解密:

 1 import os.path, time
 2 import json
 3 import os
 4 import time
 5 
 6 
 7 def wenjian():          #查找每个文件夹下面的文件
 8     wen=[]
 9     
10     for i in rootdir:
11     
12         for parent,dirnames,filenames in os.walk(i):  
13          
14             #case 2  
15             for filename in filenames:    
16                  
17                 wen.append(os.path.join(parent,filename))
18                 
19     return wen
20     
21 
22 def txt():           #在下面的基础上查找txt文件
23     a=[]
24     
25     for file_name in wen:
26         if file_name[-4:]=='.txt':
27             a.append(file_name)
28             
29     return a
30     
31 
32 
33 def jiemi():
34     
35     for i in a:      #将所有txt文件解密
36         
37         with open(i, 'r') as f:
38             content2=json.load(f)
39         f=open(i, 'w')
40         f.write(content2)
41         f.close()
42     print('解密成功')
43 
44 password=input('输入管理员密码:')
45 if password == '123456':
46         
47     rootdir=[]
48     val=input('输入关键路径:')
49     num=input('输入解密的次数:')
50     rootdir.append(val)  
51     for x in range(int(num)):
52         wen=wenjian()
53         a=txt()
54         jiemi()
55 
56 else:
57     print("密码错误5秒后退出")
58     time.sleep(5)
59     exit()
60     
原文地址:https://www.cnblogs.com/jjj-fly/p/6863862.html