apache_conf 我写的一些旧的配置类实际上非常好用

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了apache_conf 我写的一些旧的配置类实际上非常好用相关的知识,希望对你有一定的参考价值。

package com.franga2000.capturetheflag.config;

import org.bukkit.configuration.serialization.ConfigurationSerialization;

import com.franga2000.capturetheflag.arena.Arena;

public class ConfigManager {
	public static Config ARENAS;
    public static Config KITS;
    public static Config CONFIG;
    public static Config SIGNS;
    
	public static void init() {
		ConfigurationSerialization.registerClass(SerializableLocation.class, "CTF_Location");
		ConfigurationSerialization.registerClass(Arena.class, "CTF_Arena");
		ConfigurationSerialization.registerClass(Arena.class, "CTF_Kit");
	    ConfigurationSerialization.registerClass(ArenaSign.class, "CTF_ArenaSign");
	    
		ARENAS = new Config("arenas.yml");
		CONFIG = new Config("config.yml");
		KITS = new Config("kits.yml");
		SIGNS = new Config("signs.yml");
	}
}
package com.franga2000.capturetheflag.config;

import java.io.File;
import java.io.IOException;

import org.bukkit.configuration.InvalidConfigurationException;
import org.bukkit.configuration.file.YamlConfiguration;

import com.franga2000.capturetheflag.Main;
import com.franga2000.capturetheflag.Util;

public class Config extends YamlConfiguration {
	File file;
	
	public Config(String filename) {
		this(new File(Main.instance.getDataFolder(), filename));
	}
	
	public Config(File file) {
		this.file = file;
		try {
			reload();
		} catch (IOException e) {
			Util.logToConsole("&cThere was an error reading from the configuration file &e" + file.getName() + "&c!");
			e.printStackTrace();
		} catch (InvalidConfigurationException e) {
			Util.logToConsole("&cThere was an error in the configuration file &e" + file.getName() + "&c!");
			e.printStackTrace();
		}
	}

	public void reload() throws IOException, InvalidConfigurationException {
		if (!file.exists()) {
			file.getParentFile().mkdirs();
			Main.instance.saveResource(file.getName(), false);
		}
		this.load(file);
	}
	
	public void save() {
		try {
			save(file);
		} catch (IOException e) {
			Util.logToConsole("&cThere was an error saving the configuration file &e" + file.getName() + "&c!");
			e.printStackTrace();
		}
	}
}

以上是关于apache_conf 我写的一些旧的配置类实际上非常好用的主要内容,如果未能解决你的问题,请参考以下文章

apache_conf 一个简单的配置类,用于加载和保存到本地config.json文件。

windowsForm程序中,关于窗体控件接收信息的响应等问题~!

我写的这些类是否在线程安全性方面有所破坏? ManagedBeans是否在不同的Threads中使用?

Spring与SpringMVC的容器关系分析

为啥我写的Servlet文件找不到javax.servlet包

在Android SDK Manager时准备安装其中的一些包时,老说我写的服务器和端口拒绝访问,怎么办?