# coding: utf-8 import os import os.path import codecs import json class datenbank_db(object): def __init__(self): self.inhalt_alle = {} self.lesen_inhalt_db() def erzeugen_json_db(self, inhalt_person): id = self.naechste_db() datei = codecs.open(os.path.join('data', id+'.json'), 'w', 'utf-8') datei.write(json.dumps(inhalt_person, indent=3, ensure_ascii=True)) datei.close() self.inhalt_alle[id] = inhalt_person return id def lesen_json_db(self, id = None): inhalt_alle = None if id == None: inhalt_alle = self.inhalt_alle else: if id in self.inhalt_alle: inhalt_alle = self.inhalt_alle[id] return inhalt_alle def update_json_db(self, id, inhalt_person): status_b = False if id in self.inhalt_alle: datei = codecs.open(os.path.join('data', id+'.json'), 'w', 'utf-8') datei.write(json.dumps(inhalt_person, indent=3, ensure_ascii=True)) datei.close self.inhalt_alle[id] = inhalt_person status_b = True return status_b def loesche_json_db(self, id): status_b = False if id in self.inhalt_alle: os.remove(os.path.join('data', id+'.json')) del self.inhalt_alle[id] status_b = True return status_b def inhalt_db(self): return { 'Vorname': '', 'Nachname': '', 'Gaeste': '', 'Studiengang': '', 'Betreuer': '', 'Passwort': '', 'Matrikelnummer': '' } def lesen_inhalt_db(self): ordner = os.listdir('data') for dateiname in ordner: if dateiname.endswith('.json') and dateiname != 'letztes.json': datei = codecs.open(os.path.join('data', dateiname), 'rU', 'utf-8') dateiinhalt = datei.read() id = dateiname[:-4] self.inhalt_alle[id] = json.loads(dateiinhalt) def naechste_db(self): datei = open(os.path.join('data', 'letztes.json'), 'r+') letztes = datei.read() letztes = str(int(letztes)+1) datei.seek(0) datei.write(letztes) datei.close() return letztes # EOF