From 10f6d659e98dcd95ca860f5ebabe9468b15aa674 Mon Sep 17 00:00:00 2001 From: Alex Baker Date: Fri, 8 Feb 2019 13:52:00 -0600 Subject: [PATCH] Specify UTF-8 for backup files --- app/src/main/java/org/tasks/backup/TasksJsonExporter.java | 4 +++- app/src/main/java/org/tasks/backup/TasksJsonImporter.java | 4 +++- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/app/src/main/java/org/tasks/backup/TasksJsonExporter.java b/app/src/main/java/org/tasks/backup/TasksJsonExporter.java index 3c25aff0b..3247f76ed 100755 --- a/app/src/main/java/org/tasks/backup/TasksJsonExporter.java +++ b/app/src/main/java/org/tasks/backup/TasksJsonExporter.java @@ -19,6 +19,7 @@ import com.todoroo.astrid.data.Task; import java.io.IOException; import java.io.OutputStream; import java.io.OutputStreamWriter; +import java.nio.charset.Charset; import java.util.ArrayList; import java.util.HashMap; import java.util.List; @@ -44,6 +45,7 @@ import timber.log.Timber; public class TasksJsonExporter { + static final Charset UTF_8 = Charset.forName("UTF-8"); private static final String MIME = "application/json"; private static final String EXTENSION = ".json"; @@ -201,7 +203,7 @@ public class TasksJsonExporter { caldavDao.getAccounts(), caldavDao.getCalendars())); - OutputStreamWriter out = new OutputStreamWriter(os); + OutputStreamWriter out = new OutputStreamWriter(os, UTF_8); Gson gson = BuildConfig.DEBUG ? new GsonBuilder().setPrettyPrinting().create() : new Gson(); out.write(gson.toJson(data)); out.close(); diff --git a/app/src/main/java/org/tasks/backup/TasksJsonImporter.java b/app/src/main/java/org/tasks/backup/TasksJsonImporter.java index 5756d58fd..60431fee4 100644 --- a/app/src/main/java/org/tasks/backup/TasksJsonImporter.java +++ b/app/src/main/java/org/tasks/backup/TasksJsonImporter.java @@ -1,5 +1,7 @@ package org.tasks.backup; +import static org.tasks.backup.TasksJsonExporter.UTF_8; + import android.app.Activity; import android.app.ProgressDialog; import android.content.res.Resources; @@ -120,7 +122,7 @@ public class TasksJsonImporter { } catch (FileNotFoundException e) { throw new IllegalStateException(e); } - InputStreamReader reader = new InputStreamReader(is); + InputStreamReader reader = new InputStreamReader(is, UTF_8); JsonObject input = gson.fromJson(reader, JsonObject.class); try {