2017-08-19 3 views
0

J'ai ce tableau booléen que j'utilise dans mon application, mais je n'ai aucune idée de comment sauvegarder ce tableau que j'utilise. Voici comment je sauve le tableau:Comment pouvez-vous lire un tableau booléen?

public void writeArraytofile() { 
    try { 
     OutputStreamWriter outputStreamWriter = new OutputStreamWriter(openFileOutput("array.txt", Context.MODE_PRIVATE)); 

     for (int i = 0; i < array.length; i++) { 
      outputStreamWriter.write(array[i] + ""); 
     } 
     outputStreamWriter.flush(); 
     outputStreamWriter.close(); 
    } catch (IOException e) { 
     Log.v("MyActivity", e.toString()); 
    } 
} 

J'ai cherché partout sur la façon de lire ce tableau et accéder après que l'utilisateur redémarre l'application. Et l'une des choses que je ne voudrais pas utiliser est Sharedpreferences parce que quand je désinstalle mon application lorsque j'utilise Sharedpreferences après la réinstallation, ça ne marche plus. Donc n'importe quoi sans l'utilisation de Sharedpreferences serait génial.

S'il vous plaît et merci.

+0

S'il vous plaît modifier votre question avec la structure du fichier. – Vilsol

+0

@Vilsol vous voulez que j'ajoute le fichier actuel? –

+0

Non, il suffit d'ajouter la structure du fichier et non le fichier entier. – Vilsol

Répondre

-2

Une façon simple d'enregistrer des données dans le fichier avec flux: Faire une classe (par exemple mydata) et mettre en œuvre Serializable. Marque propriété dans cette classe Tableau ArrayList. Maintenant, vous pouvez écrire votre objet avec le type mydata pour le fichier, et lire avec streamereader facilement. Lorsque vous lisez le fichier, le lecteur de flux charge votre objet et vous pouvez utiliser la propriété de tableau .

Reguards A.Ayati

+0

'boolean []' est déjà 'Serializable'. Il n'y a pas besoin d'une autre classe. – EJP

+0

C'était juste un guide pour toutes les classes – Ardeshir

0

Vous pouvez écrire comme boolean + "," et lors de la lecture String[] xyz = read.split(",") et boucle à travers que pour reintialize le tableau booléen.

Je ne peux pas dire que c'est le plus efficace, mais c'est la seule chose qui me vient à l'esprit.