Python 文件读取和覆盖写入 txt文件读取json数据,覆盖写入json数据并做容错处理

前言

        读取txt文件,重写里面某个key值,然后覆盖写入文件。
        如果覆盖写入失败,则回滚值未修改前的代码,避免错误写入下次运行报错

        这段代码,其实就是模仿SpringBoot实现Mysql的事务管理通过@Transactional注解的方式 ,如果程序报错就自动回滚未插入前的数据。防止后台报错的时候sql被插入了。

#!/usr/bin/env python
# -*- coding=utf-8 -*-
__author__ = 'Benjamin'
__CreateAt__ = '2021/11/15-15:15'


import json


def writeRpcInfoConfig(RpcKey,RpcValue):

    fileName = "../config/RpcInfoConfig.txt"
    # fileName = "RpcInfoConfig.txt"

    f = open(fileName, 'r',encoding="utf-8")
    f_data = f.read()
    f.close()

    f_dict = json.loads(f_data)
    f_dict_copy = f_dict.copy()

    RpcKeyValue = f_dict.get(RpcKey,None)
    if RpcKeyValue:
        # 修改,字段新增值
        # 字典合并
        RpcKeyValue.update(RpcValue)

    else:
        # 新增Key,并添加值
        f_dict[RpcKey] = RpcValue

    try:
        f = open(fileName, 'w')
        f.write(json.dumps(f_dict))
        f.close()
        print("新增成功")
    except:
        f = open(fileName, 'w')
        f.write(json.dumps(f_dict_copy))
        f.close()
        print("新增失败,回滚未修改前")

if __name__ == "__main__":
    print(writeRpcInfoConfig("test3.rpc",{"testKey":"testValue"}))


  • 9
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

BenjaminQA

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值