Скачать 5q12's YAML API — Minecraft Моды — MetaMods

5q12's YAML API

Активный

Установок

0

Последнее обновление

1 год назад

Версии

1.19.4 — 1.21
Клиент
Fabric
Библиотеки
Управление
Утилиты

5q12's YAML API

Основные возможности

Представляем специализированный инструмент для работы с YAML-файлами в среде Minecraft Fabric. Эта библиотека разработана для упрощения процесса чтения и записи конфигурационных файлов, что особенно удобно при создании модификаций.

Основной функционал включает:

  • Загрузка данных из YAML-файлов - преобразование содержимого в объекты Java
  • Сохранение информации в YAML - сериализация объектов Java в YAML формат
  • Адаптация под Fabric - оптимальная интеграция с популярной модификационной платформой

Практическое применение

Настройка репозиториев

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

Добавление зависимостей

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

Импорт необходимых классов

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

Пример работы с простыми значениями

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) {
        // Инициализация обработчика YAML с форматом "nested"
        YamlHandler yamlHandler = YamlHandlerFactory.getHandler("nested");

        // Определение пути к файлу
        String filePath = "config/simple_data.yml";

        // Создание коллекции ключ-значение
        Map<String, Object> data = new HashMap<>();
        data.put("username", "exampleUser");
        data.put("score", 1500);

        try {
            // Запись данных в YAML файл
            yamlHandler.writeYaml(filePath, data);
            System.out.println("Данные сохранены в " + filePath);

            // Чтение данных из YAML файла
            Map<String, Object> loadedData = yamlHandler.readYaml(filePath);
            System.out.println("Загруженные данные: " + loadedData);
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

Работа со сложными структурами

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) {
        // Инициализация обработчика YAML с форматом "nested"
        YamlHandler yamlHandler = YamlHandlerFactory.getHandler("nested");

        // Определение пути к файлу
        String filePath = "config/nested_data.yml";

        // Создание вложенной структуры
        Map<String, Object> data = new HashMap<>();
        Map<String, Object> userDetails = new HashMap<>();
        userDetails.put("age", 25);
        userDetails.put("email", "user@example.com");
        data.put("username", "exampleUser");
        data.put("details", userDetails);

        try {
            // Запись вложенных данных в YAML файл
            yamlHandler.writeYaml(filePath, data);
            System.out.println("Данные сохранены в " + filePath);

            // Чтение вложенных данных из YAML файла
            Map<String, Object> loadedData = yamlHandler.readYaml(filePath);
            System.out.println("Загруженные данные: " + loadedData);
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

Использование списков

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) {
        // Инициализация обработчика YAML с форматом "nested"
        YamlHandler yamlHandler = YamlHandlerFactory.getHandler("nested");

        // Определение пути к файлу
        String filePath = "config/list_data.yml";

        // Создание списка
        List<String> favoriteFoods = new ArrayList<>();
        favoriteFoods.add("Pizza");
        favoriteFoods.add("Sushi");
        favoriteFoods.add("Tacos");

        // Создание коллекции с списком
        Map<String, Object> data = new HashMap<>();
        data.put("username", "exampleUser");
        data.put("favoriteFoods", favoriteFoods);

        try {
            // Запись данных со списком в YAML файл
            yamlHandler.writeYaml(filePath, data);
            System.out.println("Данные сохранены в " + filePath);

            // Чтение данных со списком из YAML файла
            Map<String, Object> loadedData = yamlHandler.readYaml(filePath);
            System.out.println("Загруженные данные: " + loadedData);
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}
Участники проекта
5q12

5q12

Разработчик

Создан: 16 июл 2024

ID: 25415