在某个类中创建的json文件写入函数,要使用的话稍微改一下。
def jsonWrite(self):
'''.json文件创建'''
json_dir = "json"
if not os.path.exists(json_dir):
os.mkdir(json_dir)
file_name = 'rbd_ceph_'+self.param_dict['n']+'pan.json'
json_file = open(json_dir+'/'+file_name,'w+')
#json内容写入
json_info = {}
json_data=json.loads(json.dumps(json_info))
json_txt = {
"subsystems": [
{
"subsystem": "bdev",
"config": []
}
]
}
json_data = json_txt
for i in range(0,int(self.param_dict['n'])):
method = {
"method": "bdev_rbd_create",
"params": {
"name": "Ceph"+str(i),
"pool_name": "testpool",
"rbd_name": "image"+str(15-i),
"block_size": 512,
"config": {
"mon_host": "192.168.3.1:6789,192.168.3.2:6789,192.168.3.3:6789",
"auth_supported": "none"
}
}
}
json_data["subsystems"][0]['config'].append(method)
# json_data = json.dumps(json_data, ensure_ascii=False) 先转换在写入变量的话会变成一行
json_file.write(json.dumps(json_data, indent=4, ensure_ascii=False))
json_file.close()
return True