我想问一下,如何能够循环浏览YAML文件以找到所需的数据?
我的情况:我有一个Spigot / Bukkit服务器,它有一个充满大量文件的文件夹。我需要做的是,在插件中单独浏览每个文件,找到包含我需要的数据的文件。我怎么能做到这一点?
答案 0 :(得分:2)
您可以使用以下方式遍历文件:
YamlConfiguration config = new YamlConfiguration();
File[] files = this.getDataFolder().listFiles();
for(File file : files){
try {
config.load(file);
if(config.contains("Path")){
//What you need to do.
}
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
} catch (InvalidConfigurationException e) {
e.printStackTrace();
}
}
加载它们然后循环加载它们,然后检查它们是否包含您需要的路径。但是,您可能需要指定一个文件夹,为此只需在for循环中执行一个语句,如:
file = new File(file.getAbsolutePath() + File.separator + "FOLDER_NAME");
但实际上最后一部分是因为你有其他类型的文件。如果你不小心,最终可能会遇到异常。一般而言,您所做的事情通常不是必需的,并且很可能是一个更好的解决方案。只是回答你的问题。