我试图制作设置文件,得到的结果是这样的。
[
{
"name": "Test1",
"value": true
},
{
"name": "Test2",
"value": 1.7
}
]
我想得到的是这样的东西。
{
"Test1": true,
"Test2": 1.7
}
正如你所看到的,第二个更好,也更容易得到数据。 我正在转换这个文件 设置 对象转换成JSON,并将 名称 和 价值 变量被放入不同的元素中。
这是我的代码。
public class SettingsFile {
public ArrayList<Setting> settings = new ArrayList<>();
private Gson gson = new GsonBuilder().setPrettyPrinting().create();
private final String path;
public SettingsFile(String path) {
this.path = path;
}
public void save() {
try {
FileWriter fileWriter = new FileWriter(path);
gson.toJson(settings, fileWriter);
fileWriter.close();
} catch (Exception e) {
e.printStackTrace();
}
}
这里是... 设置 类。
public class Setting<type> {
private type value;
private String name;
public Setting(String name) {
this.name = name;
}
public Setting<type> set(type value) {
this.value = value;
return this;
}
public type get() {
return value;
}
}
你可以使用 Map
而不是 Setting
类。
ArrayList<Map<String, Object>> settings = new ArrayList<>();