您好我试图在我的游戏中保存用户保存的语言 我做了一个测试,看看脚本是否创建了文件并将其读好。
我使用ini4j 将语言的值存储在 ini文件中。
我没有文件,在第一次启动时,programm在本地目录中创建空文件,并用值(language = fr)填充以进行测试。
第二次启动时,程序检查文件是否存在,然后打开它以读取值
问题是'lang'变量在我的函数 sic_Language.setLanguage(String text);
中读取时似乎是空的我的代码
String lang;
Wini ini;
//Read
if (Gdx.files.local("mygame.ini").exists()) {
//Open file
try {
ini = new Wini(Gdx.files.local("mygame.ini").file());
} catch (InvalidFileFormatException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
//Read values
lang = ini.get("interface", "language");
sic_Language.setLanguage(lang); //Set language
}
//Write
else {
//Create file
try {
Gdx.files.local("mygame.ini").file().createNewFile();
} catch (IOException e) {
e.printStackTrace();
}
//Open file
try {
ini = new Wini(Gdx.files.local("mygame.ini").file());
} catch (InvalidFileFormatException e1) {
e1.printStackTrace();
} catch (IOException e1) {
e1.printStackTrace();
}
//Write values
ini.put("interface", "language", "fr");
try {
ini.store();
} catch (IOException e) {
e.printStackTrace();
}
sic_Language.setLanguage("fr"); //Set language
}