Below is the code I use to read and write HashMaps too and from a file. I'm wondering, is there anyway I can re-factor this code so that any data structure can be read in and wrote out? Rather than creating a new class for each data structure? I appreciate any help offered!
public class FileHandler {
static ObjectOutputStream oos;
static ObjectInputStream ois;
public static void writeOut(HashMap p, File selection) throws FileNotFoundException, IOException
{
oos = new ObjectOutputStream(new FileOutputStream(selection));
oos.writeObject(p);
oos.close();
}
public static HashMap<String, Object> readIn(File selection) throws FileNotFoundException, IOException, ClassNotFoundException
{
HashMap<String, Object> temp = null;
ois = new ObjectInputStream(new FileInputStream(selection));
temp = (HashMap<String, Object>) ois.readObject();
ois.close();
return temp;
}
}
If you want any Serializable
Object
you could do something like (also, I would usetry-with-resources
),and