import json import os def load_json(filename): if not os.path.exists(filename): return [] with open(filename, 'r', encoding='utf-8') as f: return json.load(f) def save_json(filename, data): with open(filename, 'w', encoding='utf-8') as f: json.dump(data, f, indent=4, ensure_ascii=False) def add_entry(filename, entry): data = load_json(filename) data.append(entry) save_json(filename, data) return entry def update_entry(filename, entry_id, new_entry): data = load_json(filename) for i, item in enumerate(data): if item.get('id') == entry_id: data[i] = new_entry save_json(filename, data) return new_entry return None def delete_entry(filename, project_id): # 1. Charger les données with open(filename, "r", encoding="utf-8") as f: projects = json.load(f) # 2. Filtrer pour supprimer le projet avec l'ID donné updated_projects = [p for p in projects if p.get('id') != int(project_id)] # 3. Sauvegarder les données mises à jour with open(filename, "w", encoding="utf-8") as f: json.dump(updated_projects, f, indent=2, ensure_ascii=False) return {"status": "success", "deleted_id": project_id}