Saltar al contenido

¿Cómo escribo en un archivo YAML usando SnakeYaml?

No busques más por todo internet porque has llegado al espacio indicado, tenemos la respuesta que buscas sin complicaciones.

Solución:

Si entendí la pregunta, no parece tener nada que ver con YAML o SnakeYAML per se, sino con cómo escribes en un archivo específico en Java. Básicamente, lo que muestra el segundo ejemplo que copió es cómo volcar un objeto en un lugar arbitrario. java.io.Writer objeto (aunque usan un StringWriter ya que esto no escribirá nada en el disco). Si desea modificar este ejemplo para escribir en un archivo en particular, puede hacerlo haciendo uso de un FileWriteral igual que:

public void testDumpWriter() 
   Map data = new HashMap();
   data.put("name", "Silenthand Olleander");
   data.put("race", "Human");
   data.put("traits", new String[]  "ONE_HAND", "ONE_EYE" );

   Yaml yaml = new Yaml();
   FileWriter writer = new FileWriter("/path/to/file.yaml");
   yaml.dump(data, writer);

Que volcará el mapa data a un archivo YAML. Tenga en cuenta que normalmente no es necesario crear el archivo usted mismo antes de abrir el FileWriter como el FileWriter manejará eso por ti.

Otra forma de escribir datos

 Map map = new HashMap<>();
        map.put("key1", "value1");
        map.put("key2", "value2");
        map.put("key3", "value3");

        YamlWriter writer = new YamlWriter(new FileWriter("test.yml"));
        writer.write(map);
        writer.close();

Producción:

  key1: value1
  key2: value2
  key3: value3

Para mí, en este caso, veo una salida más legible. Desde la primera solución, veremos un resultado como este:

key1: value1, key2: value2, key3: value3

Si vamos a tener una gran cantidad de datos será difícil de leer

PD: necesitamos algo de dependencia

    
        com.esotericsoftware.yamlbeans
        yamlbeans
        1.13
    

Si te gusta el asunto, tienes la habilidad dejar una noticia acerca de qué le añadirías a esta crónica.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *