BuzzBot/src/main/java/net/nevet5gi/buzzbot/util/JsonUtils.java

39 lines
1.1 KiB
Java

package net.nevet5gi.buzzbot.util;
import com.google.gson.Gson;
import com.google.gson.GsonBuilder;
import net.nevet5gi.buzzbot.objects.UserData;
import java.io.*;
import java.lang.reflect.Type;
import java.util.ArrayList;
public class JsonUtils <T extends UserData> {
T object;
public void createJson(T object) {
try {
Writer writer = new FileWriter("./" + object.getName() + ".json");
GsonBuilder builder = new GsonBuilder();
builder.setPrettyPrinting();
Gson gson = builder.create();
String jsonString = gson.toJson(object);
writer.write(jsonString);
writer.close();
} catch (IOException e) {
e.printStackTrace();
}
}
public T loadJson(String jsonFileName) {
try {
BufferedReader reader = new BufferedReader(new FileReader("./" + jsonFileName + ".json"));
return new Gson().fromJson(reader, (Type) object);
} catch (FileNotFoundException e) {
e.printStackTrace();
return null;
}
}
}