Katakanlah saya memiliki beberapa kelas sederhana dan setelah itu dipakai sebagai objek saya ingin dapat membuat serial isinya ke file, dan mengambilnya dengan memuat file itu di lain waktu ... Saya tidak yakin harus mulai dari mana di sini, apa yang harus saya lakukan untuk membuat serialisasi objek ini ke file?
public class SimpleClass {
public string name;
public int id;
public void save() {
/* wtf do I do here? */
}
public static SimpleClass load(String file) {
/* what about here? */
}
}
Ini mungkin pertanyaan termudah di dunia, karena ini adalah tugas yang sangat sederhana di .NET, tetapi di Android saya cukup baru sehingga saya benar-benar tersesat.
android
serialization
file-io
Ben Lesh
sumber
sumber
Saya sudah mencoba 2 opsi ini (baca / tulis), dengan objek polos, array objek (150 objek), Peta:
Pilihan 1:
Pilihan 2:
Opsi 2 dua kali lebih cepat dari opsi 1
Opsi 2 ketidaknyamanan adalah Anda harus membuat kode khusus untuk dibaca:
sumber
Saya baru saja membuat kelas untuk menangani hal ini dengan Generics, sehingga dapat digunakan dengan semua jenis objek yang dapat serial:
sumber
Kode lengkap dengan penanganan kesalahan dan aliran file ditambahkan ditutup. Tambahkan ke kelas Anda yang Anda ingin bisa membuat serial dan deserialize. Dalam kasus saya nama kelasnya
CreateResumeForm
. Anda harus mengubahnya ke nama kelas Anda sendiri.Android
antarmukaSerializable
tidak cukup untuk menyimpan objek Anda ke file, itu hanya membuat aliran.Gunakan seperti ini di
Activity
:sumber
Saya menggunakan SharePrefrences:
sumber
Anda harus menambahkan kelas ObjectSerialization ke program Anda yang berikut ini mungkin berfungsi
}
jika Anda menggunakan untuk menyimpan array dengan SharedPreferences daripada menggunakan yang berikut: -
Untuk Serialize: -
Untuk Deserialize: -
sumber