From a8bb640f91ccdf3dd6b084eaedf558282938ead9 Mon Sep 17 00:00:00 2001 From: Victor Date: Thu, 23 Apr 2015 14:16:38 +0300 Subject: [PATCH] =?UTF-8?q?=D0=94=D0=BE=D0=B1=D0=B0=D0=B2=D0=BB=D0=B5?= =?UTF-8?q?=D0=BD=D1=8B=20=D0=BC=D0=B5=D1=82=D0=BE=D0=B4=D1=8B=20=D0=B4?= =?UTF-8?q?=D0=BB=D1=8F=20=D1=81=D0=BE=D1=85=D1=80=D0=B0=D0=BD=D0=B5=D0=BD?= =?UTF-8?q?=D0=B8=D1=8F/=D0=B7=D0=B0=D0=B3=D1=80=D1=83=D0=B7=D0=BA=D0=B8?= =?UTF-8?q?=20=D1=81=D0=BE=D1=81=D1=82=D0=BE=D1=8F=D0=BD=D0=B8=D0=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/com/annimon/everlastingsummer/IOUtil.java | 35 +++++++++++++++++++ 1 file changed, 35 insertions(+) diff --git a/src/com/annimon/everlastingsummer/IOUtil.java b/src/com/annimon/everlastingsummer/IOUtil.java index e279c9c..4e6765f 100644 --- a/src/com/annimon/everlastingsummer/IOUtil.java +++ b/src/com/annimon/everlastingsummer/IOUtil.java @@ -1,11 +1,17 @@ package com.annimon.everlastingsummer; import java.io.BufferedReader; +import java.io.DataInputStream; +import java.io.DataOutputStream; import java.io.FileDescriptor; import java.io.FileInputStream; import java.io.IOException; import java.io.InputStream; import java.io.InputStreamReader; +import java.io.OutputStream; +import java.util.ArrayList; +import java.util.List; +import android.content.Context; import android.graphics.Bitmap; import android.graphics.BitmapFactory; import android.os.Environment; @@ -26,6 +32,35 @@ public final class IOUtil { return result; } + public static List listSaves(Context context) { + final String[] fileslist = context.fileList(); + final List saves = new ArrayList(fileslist.length); + for (String filename : fileslist) { + try { + saves.add(readSaveInfo(context, filename)); + } catch (IOException ioe) { + if (Logger.DEBUG) Logger.log("listSaves: " + filename, ioe); + } + } + return saves; + } + + public static SaveInfo readSaveInfo(Context context, String filename) throws IOException { + final InputStream is = context.openFileInput(filename); + final DataInputStream dis = new DataInputStream(is); + final SaveInfo result = SaveInfo.readFromStream(dis); + dis.close(); + return result; + } + + public static void writeSaveInfo(Context context, String filename, SaveInfo saveInfo) throws IOException { + final OutputStream os = context.openFileOutput(filename, Context.MODE_PRIVATE); + final DataOutputStream dos = new DataOutputStream(os); + saveInfo.writeToStream(dos); + dos.flush(); + dos.close(); + } + private static FileInputStream streamForFD; public static FileDescriptor getFD(String file) throws IOException { if (streamForFD != null) streamForFD.close();