相当简单。class
我的主要项目有一个很大的,它变得“笨拙”。所以今天我决定尝试制作我的own class
,所以我可以简化一些code
大的class
。所以这是我的“小” class
,我用的Data storage
。该TRY/CATCH
语句floating
在 BIG 类中单独起作用。不过,在小班上,它抛出了一个 NPE。当我制作own class
. 关于为什么的任何想法?
file_in = openFileInput("array_saved");
由 Logcat 调用。
...这是课程:
package com.eai.thepicker;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
import java.util.ArrayList;
import android.app.Activity;
public class DataHandler extends Activity {
FileOutputStream file_out;
FileInputStream file_in;
ObjectOutputStream obj_out;
ObjectInputStream obj_in;
ArrayList<String> retrieved_data;
public DataHandler(){
}
@SuppressWarnings("unchecked")
public ArrayList<String> retrieveData(){
try {
file_in = openFileInput("array_saved");
obj_in = new ObjectInputStream(obj_in);
if(obj_in.available() > 0){
retrieved_data = (ArrayList<String>) obj_in.readObject();
}
else{
retrieved_data = new ArrayList<String>();
}
obj_in.close();
file_in.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
return retrieved_data;
}
public void saveData(ArrayList<String> data_out){
try {
file_out = openFileOutput("array_saved", 0);
obj_out = new ObjectOutputStream(file_out);
obj_out.writeObject(data_out);
obj_out.close();
file_out.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
}