所以我有这段代码应该检查并确保所需的密钥存在,但不管它们是否存在,它总是会调用 if 块中的代码
else {
Wini ini = new Wini(new File("config.ini"));
if(!ini.containsKey("nick") || !ini.containsKey("serverHostname") || !ini.containsKey("serverPort") || !ini.containsKey("defaultChannel") || !ini.containsKey("adminNick") || !ini.containsKey("adminHostname")) {
System.out.println("One or more keys in your configuration do not exist, Remaking configuration");
ini.clear();
ini.add("Config");
System.out.print("Nickname: ");
ini.put("Config", "nick", input.next());
System.out.print("Server Hostname: ");
ini.put("Config", "serverHostname", input.next());
System.out.print("Server Port: ");
ini.put("Config", "serverPort", input.nextInt());
System.out.print("Default Channel: ");
ini.put("Config", "defaultChannel", input.next());
ini.add("Administration");
System.out.print("Bot Administrator Nickname: ");
ini.put("Administration", "adminNick", input.next());
System.out.print("Bot Administrator Hostname: ");
ini.put("Administration", "adminHostname", input.next());
ini.store();
System.out.println("Configuration file Remade, Continuing with startup");
}
编辑:这是 config.ini:
[Config]
nick = Craftxbot
serverHostname = irc.alphachat.net
serverPort = 6667
defaultChannel = #minecraftchat
adminNick = craftxbox
adminHostname = craftxbox.tk