Datei im internen Speicher ablegen geht nicht (FileOutputStream, FileInputStream)

  • Antworten:1
Little
  • Forum-Beiträge: 8

05.01.2014, 18:24:12 via Website

Hi,

ganz einfache Frage. Ich habe eine HashMap, die ich gerne im internen Speicher ablegen möchte. Folgender Code:

1File file = new File("datei.data");
2
3 HashMap<String, Object> myHash;
4
5 if (file.exists()) {
6
7... Datei laden ...
8
9 } else {
10
11 Log.d(TAG, "File is not existing");
12
13 myHash = new HashMap<String,Object>();
14
15... Datei befüllen ...
16
17 FileOutputStream fileOutputStream;
18 try {
19 file.createNewFile();
20 fileOutputStream = new FileOutputStream("datei.data", false);
21 ObjectOutputStream objectOutputStream = new ObjectOutputStream(fileOutputStream);
22 objectOutputStream.writeObject(rechnungen);
23 objectOutputStream.close();
24 } catch (FileNotFoundException e) {
25 Log.d(TAG, "FileNotFoundException");
26 } catch (IOException e) {
27 Log.d(TAG, "IOException");
28 }


Leider bekomme ich beim Speichern immer eine IOException..

Könnt ihr mir helfen, was ich genau falsch mache? Die Datei soll im internen Speicher abgelegt werden.

Danke :-)

— geändert am 05.01.2014, 18:35:34

Antworten
impjor
  • Forum-Beiträge: 1.793

05.01.2014, 20:05:53 via App

Probiere mal File f = new File(getFilesDir(), "...");
...

Die Datei kann dann nur von deiner App gelesen/bearbeitet werden.

LG

Liebe Grüße impjor.

Für ein gutes Miteinander: Unsere Regeln
Apps für jeden Einsatzzweck
Stellt eure App vor!

Antworten