【发布时间】:2021-06-04 17:03:20
【问题描述】:
我对 YAML 文件有疑问。 当我尝试在 .yml 文件中将对象从一个列表移动到另一个列表并保存时,会发生类似这样的奇怪事情:
queued: &id001 []
current: *id001
应该发生什么:
current: Fraithor # <= Minecraft username, from queued, moved when running reQueue()
queued: [] # <= Or just nothing / delete list
reQueue() 方法:
for (String path : FileBasics.FILETYPE.BANWAVE.getConfig().getStringList("queued")) {
List<String> list = FileBasics.FILETYPE.BANWAVE.getConfig().getStringList("current");
List<String> arrayList = new ArrayList<>();
arrayList.add(path);
list.addAll(arrayList);
FileBasics.FILETYPE.BANWAVE.getConfig().set("current", list);
list.remove(path);
FileBasics.FILETYPE.BANWAVE.getConfig().set("queued", list);
try {
FileBasics.FILETYPE.BANWAVE.getConfig().save(FileBasics.FILETYPE.BANWAVE.getFile());
} catch (IOException e) {
e.printStackTrace();
}
}
}
显然,我使用单独的类/emnum 来保存文件 (FileBasics)。代码很长,所以我把它粘贴到了 pastebin HERE (https://pastebin.com/XsqvYTBb)
【问题讨论】: