diff --git a/src/main/java/com/github/stachelbeere1248/zombiesutils/timer/recorder/FileManager.java b/src/main/java/com/github/stachelbeere1248/zombiesutils/timer/recorder/FileManager.java index f1d1acd..5175298 100644 --- a/src/main/java/com/github/stachelbeere1248/zombiesutils/timer/recorder/FileManager.java +++ b/src/main/java/com/github/stachelbeere1248/zombiesutils/timer/recorder/FileManager.java @@ -19,7 +19,7 @@ public class FileManager { Gson gson = new Gson(); try { - dataJson = FileUtils.readFileToString(file, StandardCharsets.US_ASCII); + dataJson = FileUtils.readFileToString(file, StandardCharsets.UTF_16); } catch (IOException e) { throw new RuntimeException(e); } @@ -38,7 +38,7 @@ public class FileManager { } } public static void writeDataToFile(SplitsFile splitsFile) throws IOException { - FileUtils.writeStringToFile(splitsFile, splitsFile.getData().toJSON(), StandardCharsets.US_ASCII); + FileUtils.writeStringToFile(splitsFile, splitsFile.getData().toJSON(), StandardCharsets.UTF_16); } public static CategoryData categoryReadOrCreate(CategoryFile file) { CategoryData data; diff --git a/src/main/java/com/github/stachelbeere1248/zombiesutils/timer/recorder/data/CategoryData.java b/src/main/java/com/github/stachelbeere1248/zombiesutils/timer/recorder/data/CategoryData.java index 25be216..c14f860 100644 --- a/src/main/java/com/github/stachelbeere1248/zombiesutils/timer/recorder/data/CategoryData.java +++ b/src/main/java/com/github/stachelbeere1248/zombiesutils/timer/recorder/data/CategoryData.java @@ -29,7 +29,7 @@ public class CategoryData implements ISplitsData { @Override public String toJSON() { Gson gson = new Gson(); - return gson.toJson(this, CategoryData.class); + return gson.toJson(this); } public short getBestSegment(int index) { diff --git a/src/main/java/com/github/stachelbeere1248/zombiesutils/timer/recorder/data/GameData.java b/src/main/java/com/github/stachelbeere1248/zombiesutils/timer/recorder/data/GameData.java index ad4c49c..3148fd8 100644 --- a/src/main/java/com/github/stachelbeere1248/zombiesutils/timer/recorder/data/GameData.java +++ b/src/main/java/com/github/stachelbeere1248/zombiesutils/timer/recorder/data/GameData.java @@ -2,6 +2,7 @@ package com.github.stachelbeere1248.zombiesutils.timer.recorder.data; import com.github.stachelbeere1248.zombiesutils.game.Map; import com.github.stachelbeere1248.zombiesutils.timer.recorder.ISplitsData; +import com.google.gson.Gson; import org.jetbrains.annotations.NotNull; import java.util.Arrays; @@ -25,12 +26,8 @@ public class GameData implements ISplitsData { @Override public String toJSON() { - StringBuilder JSON = new StringBuilder("["); - for (short segment: segments) { - JSON.append(segment + ','); - } - JSON.setCharAt(JSON.length()-1,']'); - return JSON.toString(); + Gson gson = new Gson(); + return gson.toJson(this.segments); } public void setSegment(int index, short ticks) { segments[index] = ticks;