把txt文件中的数据 写入mongodb
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了把txt文件中的数据 写入mongodb相关的知识,希望对你有一定的参考价值。
参考技术A def write_mongodb(data):# 正则表达式匹配每一行我们想要的数据
pattern = re.compile(r".*/(\w+),(\w+),(\d+)")
for item in data:
item = item.strip()
d = pattern.match(item)
a_code = d.group(1)
b_code = d.group(2)
batch_no = d.group(3)
user_id = bson.ObjectId("aaabbb")
msg = "a_code": a_code, "b_code": b_code, "batch_code": batch_code, "batch_no": batch_no,
"created_at": datetime.datetime.now(), "updatead_at": datetime.datetime.now(),
"invaild": True, "invaild_at": datetime.datetime.now(),
"user_id": user_id, "user_name": "test"
try:
fake_table.insert_one(msg)
except Exception as e:
logging.info(item)
logging.info(e)
pass
if __name__ == '__main__':
# 文件中的内容是 https://info.svnup.cn/A/3ED00646C15F4CF0A110769796DNAC6,22621C99067B4D91BDSDGB3A60702C6D,00000001
file = glob.glob("fake_file_dir/*.txt")
if len(file) != 1:
print("fake_file_dir目录下只能有一个文件而却只能是要导入的那个文件")
exit()
# 从文件中读出数据把每行数据分开放在一个大列表中data
with open(file[0]) as f:
file_data = f.readlines()
print("总共有---> %s <----数据" % len(file_data))
file = os.path.basename(file[0])
batch_code = re.match(r"(.*)\.txt", file)
batch_code = batch_code.group(1)
# 调用write_mongodb函数
write_mongodb(file_data)
IO流的练习5 —— 读取文件中的字符串,排序后写入另一文件中
需求:已知s.txt文件中有这样的一个字符串:“hcexfgijkamdnoqrzstuvwybpl”
请编写程序读取数据内容,把数据排序后写入ss.txt中。
分析:
A:读取文件中的数据
B:把数据存在一个字符串中
C:把字符串转换成字符串数组
D:对字符串数组进行排序
E:数组转换成字符串
F:把字符串写入文件中
1 public static void main(String[] args) throws IOException { 2 // 读取文件中的数据 缓冲字符输入流 3 BufferedReader br = new BufferedReader(new FileReader("s.txt")); 4 // 把数据存在一个字符串中 5 String s = br.readLine(); 6 br.close(); 7 // 把字符串转换成字符串数组 8 char[] ch = s.toCharArray(); 9 // 对字符串数组进行排序 10 Arrays.sort(ch); 11 //数组转换成字符串 12 String result = new String(ch); 13 14 //把字符串写入文件中 缓冲字符输出流 15 BufferedWriter bw = new BufferedWriter(new FileWriter("ss.txt")); 16 bw.write(result); 17 bw.close(); 18 19 }
以上是关于把txt文件中的数据 写入mongodb的主要内容,如果未能解决你的问题,请参考以下文章
IO流的练习5 —— 读取文件中的字符串,排序后写入另一文件中