U3.4 · JSON¶
Leer, modificar y guardar datos en un archivo JSON.
Ejercicio 3.4.1¶
Gestión de usuarios en JSON. Parte de este archivo datos_usuarios_orig.json:
{
"usuarios": [
{"id": 1, "nombre": "Juan", "edad": 30},
{"id": 2, "nombre": "Ana", "edad": 25}
]
}
Programa estas funciones:
mostrarDatos(datos): muestraID: <id>, Nombre: <nombre>, Edad: <edad>por cada usuario entre las líneas--- Contenido Actual del JSON ---y--- Fin del Contenido ---; si no hay usuarios, avisa.inicializarDatos(): copiadatos_usuarios_orig.jsonendatos_usuarios.json. Debe controlar que el origen no exista y que tenga un JSON inválido, con mensajes de error claros. Si va bien:Datos inicializados desde '...' a '...'.cargarJson()yguardarJson().
En main: limpia la consola, inicializa, carga y muestra los datos y haz una pausa. Después, mostrando los datos y haciendo una pausa tras cada paso: actualizar la edad de un usuario, insertar uno nuevo, eliminar otro y guardar el archivo.
En Dart
Usa dart:convert (jsonDecode, jsonEncode) y dart:io (File.readAsStringSync, File.writeAsStringSync, File.existsSync). jsonDecode lanza FormatException con un JSON inválido.