我正在尝试在包含播放器数据的specfic文件夹中创建一个文件。但是,我遇到了两个问题。
任何想法都会很棒,我是文件处理新手:S
$scope.updateTotal = function(item) {
var t = 0;
$scope.marksArray.forEach(function(i) {
if(i.name == item.name){
t += parseInt(i.Marks,10);
}
});
$scope.total = t;
}
进入控制台的输出是什么:
public void saveData() {
// SAVE THE DATA WHEN THE PLAYER QUITS!
// if (!shouldCreateFile()) return;
new BukkitRunnable() {
@Override
public void run() {
System.out.println("DEBUG : " + f.getParentFile().exists());
System.out.println("DEBUG : " + f.getParentFile());
if (!f.exists()) {
System.out.println("DEBUG : 2");
try {
System.out.println("DEBUG : 3");
if(!f.getParentFile().exists()) f.getParentFile().mkdirs();
System.out.println("DEBUG : 4");
f.createNewFile();
System.out.println("DEBUG : 5");
} catch (IOException e) {
Bukkit.getServer().getLogger().severe(ChatColor.RED + "******** Could not CREATE the PLAYERDATA file for " + uuid + "! ********");
}
}
d.set("Settings", settings);
d.set("Kills", kills);
d.set("Duel_Wins", duelWins);
d.set("Duel_Losses", duelLosses);
d.set("Top_KS", topKillstreak);
try {
d.save(f);
} catch (IOException e) {
Bukkit.getServer().getLogger().severe(ChatColor.RED + "******** Could not SAVE the PLAYERDATA file for " + uuid + "! ********");
}
}
}.runTaskAsynchronously(Main.getInstance());
}
如何定义f:
[21:10:36 INFO]: DEBUG : true
[21:10:36 INFO]: DEBUG : plugins/Main:playerdata
再次感谢!
编辑: 看起来像 WAS 文件已创建,但不在指定的路径中。 Here is how it turned out.
答案 0 :(得分:0)
声明你的File
对象。
f = new File(Main.getInstance().getDataFolder() + File.pathSeparator + "playerdata", uuid.toString() + ".yml");
更多参考: