我正在尝试使用ini4j向ini文件中写入内容。
当我调用store()方法时,即使它在我的项目目录中,它也会引发FileNotFound异常。
也许我的代码做错了什么?
主要:
public class Main {
public static Wini ini = null;
public static void main(String[] args) {
Config conf = new Config();
try {
conf.setMultiOption(true);
ini = new Wini();
ini.setConfig(conf);
ini.load(new File("apikeys.ini"));
} catch (InvalidFileFormatException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
我尝试写入和存储数据的文件:
if (KeyEndpoint.isValid(apikey)) {
Main.ini.put(apikey, Main.ini.get("Apikey"));
try {
Main.ini.store();
} catch (IOException e) {
channel.sendMessage("Invalid api key.").queue();
}
} else {
channel.sendMessage("API Key is invalid.").queue();
}
感谢您的帮助,至少我想知道自己在做错什么。
谢谢!
答案 0 :(得分:0)
它与相对路径有关。尝试在Main中更改绝对路径的文件名,例如“ /tmp/apikeys.ini”,以检查代码是否正常工作。如果可行,那么您现在可以将其更改为“ ../../directory/filename”之类的名称,或者更改为与您知道从中执行代码的位置有关的名称。熟悉您的Java路径环境变量(例如JAVA_HOME)以及所有这些变量,使其更持久,更可移植。