"" base64编解码处理 用于处理某些被加密的敏感词库 author : @h-j-13 time : 2018-7-18 """ import os import base64 def decode64file(path_file): """解码base64加密的文件""" with open(path_file, 'rb') as f: str_set = set() for line in f: s = line.strip() # strip()方法消除多余的空格之类的特殊字符 if s.endswith(b'Cg=='): s = s.replace(b'Cg==', b'') str_set.add(base64.b64decode(s)) return str_set train_data_url = r"C:\Users\曹福滨\Downloads\tc-corpus-\answer" def get_all_file_by_path(path=train_data_url): """获取某个目录下的所有训练文件""" file_path = [] dir_list = os.listdir(train_data_url) for d in dir_list: file_path.extend(map(lambda x: train_data_url + d + '/' + x, os.listdir(train_data_url + d))) return file_path def decode_file2utf8(file_path): """将文件从GB2312编码解码为utf8文件""" decode_error = False file_data = [] with open(file_path, 'r') as f: for l in f.readlines(): try: tmp = l.encode('gbk').decode('utf8') except Exception as e: decode_error = True tmp = '' file_data.append(tmp) if decode_error: os.remove(file_path) else: with open(file_path, 'w') as f: f.writelines(file_data) if __name__ == '__main__': for p in get_all_file_by_path(): decode_file2utf8(p)
时间: 2023-04-05 09:03:45 浏览: 77
这段代码是用来解码base64加密的文件,主要是用于处理一些被加密的敏感词库。作者是@h-j-13,时间是2018年7月18日。代码中使用了Python的os和base64模块,其中decode64file函数接受一个文件路径作为参数,读取文件内容并解码,最终返回一个字符串集合。
相关问题
&-inner { background-color: @popover-bg; background-clip: padding-box; border-radius: @border-radius-base; box-shadow: @box-shadow-base; box-shadow: ~'0 0 8px @{shadow-color} \9'; }
这是一段 LESS/CSS 代码,用于设置一个弹出框的样式。其中,@popover-bg 是弹出框的背景颜色变量,@border-radius-base 是弹出框的圆角半径变量,@box-shadow-base 是弹出框的阴影变量,而 ~'0 0 8px @{shadow-color} \9' 则是一个 IE hack,用于在 IE8 及以下版本中设置阴影。
使用Poco::Base64Decoder类进行base64解码,指定UTF-8
您可以使用Poco::Base64Decoder类的decodeToString()方法进行base64解码,并在解码后使用Poco::UTF8Encoding类指定UTF-8编码。以下是一个示例代码:
```c++
#include "Poco/Base64Decoder.h"
#include "Poco/UTF8Encoding.h"
#include <iostream>
int main()
{
std::string base64String = "SGVsbG8gV29ybGQh"; // "Hello World!" 的base64编码
std::stringstream ss;
Poco::Base64Decoder decoder(ss);
decoder << base64String;
std::string decodedString;
decoder.close();
Poco::UTF8Encoding utf8;
Poco::TextConverter converter(utf8, utf8);
converter.convert(decodedString, ss.str());
std::cout << decodedString << std::endl;
return 0;
}
```
在上面的示例代码中,我们将base64编码的字符串 "SGVsbG8gV29ybGQh" 解码为字符串 "Hello World!" 并使用UTF-8编码进行输出。