Merge remote-tracking branch 'origin/master'
This commit is contained in:
commit
ec35ad9f5d
@ -1,5 +1,6 @@
|
|||||||
import json
|
import json
|
||||||
import os
|
import os
|
||||||
|
import pickle
|
||||||
|
|
||||||
|
|
||||||
class DataFile(dict):
|
class DataFile(dict):
|
||||||
@ -33,10 +34,24 @@ class JSONFile(DataFile):
|
|||||||
c = f.read()
|
c = f.read()
|
||||||
|
|
||||||
if len(c) > 0:
|
if len(c) > 0:
|
||||||
json_dict = json.loads(c)
|
self.update(json.loads(c))
|
||||||
for k in json_dict:
|
|
||||||
self[k] = json_dict[k]
|
|
||||||
|
|
||||||
def save(self):
|
def save(self):
|
||||||
with open(self.filename, "wt") as f:
|
with open(self.filename, "wt") as f:
|
||||||
f.write(json.dumps(self.copy(), indent=4))
|
f.write(json.dumps(self.copy(), indent=4))
|
||||||
|
|
||||||
|
|
||||||
|
class PickleFile(DataFile):
|
||||||
|
def __init__(self, filename: str, create: bool) -> None:
|
||||||
|
super().__init__(filename, create)
|
||||||
|
|
||||||
|
def load(self) -> None:
|
||||||
|
with open(self.filename, "rb") as f:
|
||||||
|
c = f.read()
|
||||||
|
|
||||||
|
if len(c) > 0:
|
||||||
|
self.update(pickle.loads(c))
|
||||||
|
|
||||||
|
def save(self) -> None:
|
||||||
|
with open(self.filename, "wb") as f:
|
||||||
|
pickle.dump(self.copy(), f)
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user