从内部存储读取字符串数组

时间:2013-11-02 11:19:15

标签: java android arrays storage internal

我已经在论坛上搜索了一段时间,但找不到我的问题。我看到了很多关于如何将字符串数组写入内部存储的示例,但没有看到如何再次读取它们。

我有一个字符串数组,由以下字节保存:

String FILENAME = "data1";
fos = openFileOutput(FILENAME, Context.MODE_APPEND);
for(int j=1;j<=PupilAmount;j++) {  
    fos.write(pup[j].getBytes());  
} 
fos.close();

但是如何再次读取变量,并将其保存在新Activity的新变量中?

1 个答案:

答案 0 :(得分:2)

字符串数组是可序列化的。所以你可以在文件上序列化它

FileOutputStream fout = openFileOutput(FILENAME, Context.MODE_APPEND);
ObjectOutputStream oos = new ObjectOutputStream(fout);
oos.writeObject(pup);
oos.close();

以这种方式回读:

FileInputStream fin = openFileInput(FILENAME, Context.MODE_APPEND);
ObjectInputStream ois = new ObjectInputStream(fin);
String[] pup = (String[]) ois.readObject();
ois.close()