5
シリアル化可能なオブジェクトを内部メモリにファイルに書きたいと思います。その後、そのファイルからそのオブジェクトを後でロードします。 Androidでこれをどうすればできますか?Android:オブジェクトの書き込みと取得
シリアル化可能なオブジェクトを内部メモリにファイルに書きたいと思います。その後、そのファイルからそのオブジェクトを後でロードします。 Androidでこれをどうすればできますか?Android:オブジェクトの書き込みと取得
まず、あなたのオブジェクトはSerializable
を実装する必要があります。シリアライズ可能クラスにserialVersionUID
を追加することを忘れないでください。
オブジェクトの特定のフィールドを保存しない場合は、transient
というマークを付けます。 すべてのフィールドがシリアル化可能であることを確認してください。
次に、内部メモリにファイルを作成し、ObjectOutputStreamを作成してオブジェクトを保存します。そして、あなたがオブジェクトを保存するためにそのパスを使用することができます
File path=new File(getFilesDir(),"myobjects");
path.mkdir();
:
File filePath =new File(path, "filename");
FileOutputStream fos = new FileOutputStream(filePath);
ObjectOutputStream oos = new ObjectOutputStream(fos);
oos.writeObject(object);
oos.close();
読書が似ています。
FileInputStream fis = new FileInputStream(file);
ObjectInputStream in = new ObjectInputStream(fis);
MyObjectClass myObject = (MyObjectClass) in.readObject();
in.close();
あなたが特定のフォルダに保存したい場合は、このようなパスを作成することができます