Я пишу Bukkit (для тех, кто не знает: «Мод и плагины, которые упрощают запуск и управление серверами Minecraft. Включают форумы и документацию») плагин, который хранит пользовательские команды в своих соответствующих файлах. Я чувствую, что код, который я написал, крайне неэффективен.
Каждый раз, когда срабатывает PlayerCommandPreprocessEvent (каждый раз, когда вводится сообщение с "/" в начале), я создаю такую переменную...
PrintWriter out = new PrintWriter(new BufferedWriter(new FileWriter(fM.retrievePlayerFile(e.getPlayer().getName()), true)))
Затем я пишу в файл этого конкретного плеера, а затем закрываю вывод.
Неэффективно? Думаю, да....
Есть ли более простой и эффективный способ сделать это?
Заранее спасибо.
Изменить: fM.retrievePlayerFile(Player player)
это:
public File retrievePlayerFile(String player) {
player = player.toLowerCase();
return (new File(plugin.getDataFolder(), "/users/" + player));
}