2013-11-02 33 views
0

我已在論壇上搜索了一段時間,但無法找到我的問題。我看到很多關於如何將字符串數組寫入內部存儲器的示例,但不知道如何再次讀取它們。從內部存儲器讀取字符串數組

我有一個被保存在一個字符串數組:

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

但我怎麼再次讀取變量,並將其保存在一個新的變量在我的新的活動?

回答

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() 
+0

哇。這聽起來很簡單。該文件是否能夠以這種方式包含多個對象呢? – BeHaa

+0

是的,也是複雜的對象,但這些對象必須實現可序列化的接口,否則它們不能寫 – Blackbelt

相關問題