Langue

5q12's YAML API

5q12's YAML API

Modrinth

A YAML api to read and write to YAML files for Fabric.

1.2k téléchargements 2 abonnés mis à jour 23mo ago
dernière vv1.1.3-fabric Modrinth
Fabric 1.19.4 – 1.21 LibraryManagementUtility

5q12's YAML API

Overview

5q12's YAML API is a simple and efficient API for reading and writing YAML files within the Minecraft Fabric modding environment. This API facilitates seamless integration of YAML configuration files, allowing mod developers to easily manage configuration data.

Features

  • Read YAML Files: Parse YAML files into Java objects with ease.
  • Write YAML Files: Serialize Java objects into YAML format.
  • Integration: Designed specifically for use with Fabric, ensuring compatibility and performance.

Example Usage

Add to repositories

repositories {
    maven {
        url = uri("https://yml.ccls.app/v1.1.3")
    }
    mavenCentral()
}

Add to dependencies

dependencies {
    modImplementation 'app.ccls.yml:yamlapi:1.1.3'
}

Imports

import app.ccls.yml.YamlHandler;
import app.ccls.yml.YamlHandlerFactory;

Simple Key-Value Storage

import app.ccls.yml.YamlHandler;
import app.ccls.yml.YamlHandlerFactory;
import java.io.IOException;
import java.util.HashMap;
import java.util.Map;

public class SimpleKeyValueExample {
    public static void main(String[] args) {
        // Initialize YamlHandler with the "nested" format
        YamlHandler yamlHandler = YamlHandlerFactory.getHandler("nested");

        // Define a file path
        String filePath = "config/simple_data.yml";

        // Create a simple key-value map
        Map<String, Object> data = new HashMap<>();
        data.put("username", "exampleUser");
        data.put("score", 1500);

        try {
            // Write the data to the YAML file
            yamlHandler.writeYaml(filePath, data);
            System.out.println("Data saved to " + filePath);

            // Read the data back from the YAML file
            Map<String, Object> loadedData = yamlHandler.readYaml(filePath);
            System.out.println("Loaded data: " + loadedData);
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

Nested Structures

import app.ccls.yml.YamlHandler;
import app.ccls.yml.YamlHandlerFactory;
import java.io.IOException;
import java.util.HashMap;
import java.util.Map;

public class NestedStructureExample {
    public static void main(String[] args) {
        // Initialize YamlHandler with the "nested" format
        YamlHandler yamlHandler = YamlHandlerFactory.getHandler("nested");

        // Define a file path
        String filePath = "config/nested_data.yml";

        // Create a nested structure map
        Map<String, Object> data = new HashMap<>();
        Map<String, Object> userDetails = new HashMap<>();
        userDetails.put("age", 25);
        userDetails.put("email", "[email protected]");
        data.put("username", "exampleUser");
        data.put("details", userDetails);

        try {
            // Write the nested data to the YAML file
            yamlHandler.writeYaml(filePath, data);
            System.out.println("Data saved to " + filePath);

            // Read the nested data back from the YAML file
            Map<String, Object> loadedData = yamlHandler.readYaml(filePath);
            System.out.println("Loaded data: " + loadedData);
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

Lists in YAML

import app.ccls.yml.YamlHandler;
import app.ccls.yml.YamlHandlerFactory;
import java.io.IOException;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

public class ListExample {
    public static void main(String[] args) {
        // Initialize YamlHandler with the "nested" format
        YamlHandler yamlHandler = YamlHandlerFactory.getHandler("nested");

        // Define a file path
        String filePath = "config/list_data.yml";

        // Create a list
        List<String> favoriteFoods = new ArrayList<>();
        favoriteFoods.add("Pizza");
        favoriteFoods.add("Sushi");
        favoriteFoods.add("Tacos");

        // Create a map to hold the list
        Map<String, Object> data = new HashMap<>();
        data.put("username", "exampleUser");
        data.put("favoriteFoods", favoriteFoods);

        try {
            // Write the list data to the YAML file
            yamlHandler.writeYaml(filePath, data);
            System.out.println("Data saved to " + filePath);

            // Read the list data back from the YAML file
            Map<String, Object> loadedData = yamlHandler.readYaml(filePath);
            System.out.println("Loaded data: " + loadedData);
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

Versions

Release
v1.1.3-fabric
fabric · 1.19.4, 1.20.1, 1.20.6 · 23mo ago
- **Added support for** 1.19.4, 1.20.1, 1.20.6, 1.21
901
Release
v1.1.2-fabric
fabric · 1.21 · 23mo ago
- **Added** an actual Repo functionality - **Added** better Commented support "#"
80
Release
v1.1.1-fabric
fabric · 1.21 · 23mo ago
- Added Nested suport (use nested as yaml type) - Removed AdvancedYamlHandler (it was replaced with NestedYamlHandler) - Added logging (only on nested yaml not…
72
Release
v1.1.0-fabric
fabric · 1.21 · 23mo ago
- Added more YAML formating options basic, advanced, nested
75
Release
v1.0.0-fabric
fabric · 1.21 · 23mo ago
- v1.0.0
69

Commentaires 0

Aucun commentaire pour l'instant. Sois le premier à donner ton avis.

Télécharger 5q12's YAML API

Les fichiers proviennent directement de la source d'origine. Modgrid ne les héberge ni ne les modifie.