配置文件格式
SpongeAPI 通过使用 TypeToken
类,提供了将文本直接序列化至配置文件中的方式。 Text 对象序列化后的配置节点结构,和对应的 JSON 结构是一样的。
小技巧
关于如何使用 Configurate 处理插件的配置文件,请参阅插件配置中的内容。
作为示例,文本 “Hello World!” 被附加上了红色和下划线的格式,那么将有如下形式的 HOCON 格式代表它:
{
underlined=true
color=red
text="Hello, world!"
}
若要将一个 Text
对象保存到一个节点中,只需要下面的代码:
import com.google.common.reflect.TypeToken;
import ninja.leaping.configurate.ConfigurationNode;
import org.spongepowered.api.text.Text;
import org.spongepowered.api.text.format.TextColors;
import org.spongepowered.api.text.format.TextStyles;
ConfigurationNode node = loader.load();
Text text = Text.of(TextColors.RED, TextStyles.UNDERLINE, "Hello World!");
node.getNode("mytext").setValue(TypeToken.of(Text.class), text);
loader.save(node);
然后你可以通过下面的代码加载并生成一个 Text
对象:
Text text = node.getNode("mytext").getValue(TypeToken.of(Text.class));
注解
并不是只有 HoconConfigurationLoader 可以这么做,实际上所有的 ConfigurationLoader 都可以。