43 lines
No EOL
1.3 KiB
Python
43 lines
No EOL
1.3 KiB
Python
import json
|
|
import os
|
|
|
|
class Data:
|
|
def __init__(self, file_path):
|
|
"""
|
|
Initialise la classe Data à partir d'un fichier JSON.
|
|
|
|
:param file_path: Chemin du fichier JSON.
|
|
"""
|
|
self.file_path = file_path
|
|
|
|
def save_data(self, data):
|
|
"""
|
|
Enregistre les données dans le fichier JSON.
|
|
|
|
:param data: Données à enregistrer.
|
|
"""
|
|
try:
|
|
with open(self.file_path, 'w', encoding='utf-8') as file:
|
|
# On remplace les caractères spéciaux par des espaces
|
|
json.dump(data, file, ensure_ascii=False, indent=4)
|
|
except Exception as e:
|
|
print(f"Erreur lors de l'enregistrement des données : {e}")
|
|
|
|
def load_data(self):
|
|
"""
|
|
Charge les données à partir du fichier JSON.
|
|
|
|
:return: Données chargées.
|
|
"""
|
|
if not os.path.exists(self.file_path):
|
|
print(f"Le fichier {self.file_path} n'existe pas.")
|
|
return None
|
|
|
|
try:
|
|
with open(self.file_path, 'r', encoding='utf-8') as file:
|
|
data = json.load(file)
|
|
print(f"Données chargées avec succès depuis {self.file_path}")
|
|
return data
|
|
except Exception as e:
|
|
print(f"Erreur lors du chargement des données : {e}")
|
|
return None |