Ir al contenido

Write JSON

Tipo: write-json  ·  Paquete: JSON Activities v1.0.4  ·  Salida: string

Convierte un valor (un diccionario, una lista, una tabla) a JSON y lo guarda en un archivo. Útil para generar archivos de configuración, exportar datos o dejar un resumen que otro sistema pueda leer.

Serializa value a JSON y lo escribe en path. Por defecto formatea el resultado de forma legible (indented = true). Devuelve la ruta escrita.

  • Qué se convierte: diccionarios → objetos, listas → arreglos, textos, números, booleanos y fechas (formato ISO 8601, 2026-10-15T08:30:00). Una DataTable se guarda como un arreglo de objetos, uno por fila (columna → valor; celdas vacías → null). Un valor nulo escribe null.
  • Caracteres especiales: las tildes, eñes y caracteres como <, > o & se guardan como secuencias \u00E1. Es JSON válido y cualquier lector (incluida Read JSON) los recupera tal cual.
  • Archivo: se escribe en UTF-8 sin marca BOM. Si existe, se reemplaza; si la carpeta no existe, se crea.
  • Idempotente: repetirla con el mismo valor deja el mismo archivo.
ParámetroTipoPor defectoDescripción
pathstring—Ruta del archivo JSON de salida, con su carpeta.
valueobject—El valor a convertir: diccionario, lista, DataTable, texto, número…
ParámetroTipoPor defectoDescripción
indentedbooltrueFormatear con saltos de línea y sangría para que sea fácil de leer. Con false, todo queda en una línea (archivo más pequeño).

Devuelve un string con la ruta del archivo escrito (tal como la indicaste en path).

MensajeCausa y solución
The process cannot access the file '…' because it is being used by another process.El archivo está abierto en otro programa.
Access to the path '…' is denied.Sin permiso de escritura en la carpeta.
'path' es obligatorio.La expresión de path dio nulo.

Si path no incluye una carpeta (solo un nombre de archivo), la actividad falla: usa una ruta completa. Los valores de tipos especiales (por ejemplo, una fila suelta DataRow o una sesión abierta) no se pueden convertir a JSON: pásalos antes a un diccionario.

Create Dictionary → output: resultado
Set Dictionary Value dict = resultado key = "procesados" value = total
Set Dictionary Value dict = resultado key = "fecha" value = today().ToString("yyyy-MM-dd")
Write JSON path = "C:/salida/resumen.json" value = resultado → output: rutaResumen
Log message = "Resumen guardado en " + rutaResumen

Resultado en C:/salida/resumen.json:

{
"procesados": 42,
"fecha": "2026-10-15"
}