Aller au contenu

Ecrire dans un fichier texte sur la carte SD


Recommended Posts

Bonjour,

Je travaille sur un système de récupération et de traitement de données GPS, pour une de mes mises en oeuvre je doit simplement collecter les données et les enregistrer une par une dans un fichier texte qui sera consultable par la suite depuis l'ordinateur pour un traitement externe.

Seulement voilà je n'arrive pas à écrire sur la carte SD.

En simplifiant, voilà ce que j'ai essayé de faire:

public void ecrire(String info)

{

String NOTES ="info.txt";

File file = new File(Environment.getExternalStorageDirectory(), NOTES);

file.createNewFile();

e1.printStackTrace();

FileWriter filewriter = new FileWriter(file,false);

filewriter.write(info);

filewriter.close();

Toast.makeText(getApplicationContext(), "Données Sauvegardées",Toast.LENGTH_SHORT).show();

}

Je précise que cette application est destinée à fonctionner sous android 2.3.3.

Lien vers le commentaire
Partager sur d’autres sites

@chpil merci bien, j'avais oublié la permission "WRITE_EXTERNAL_STORAGE", maintenant j'écris bien. Au passage si quelqu'un sait comment faire une pause car avec Thread.currentThread().sleep(5000); j'ai droit à des jolis freezes

Modifié par babazooka
Lien vers le commentaire
Partager sur d’autres sites

En faisant un Thread.currentThread().sleep(), tu fais effectivement un sleep dans le thread principal, celui de l'IHM, et donc tu freezes toute ton IHM

Que veux tu faire, en faire ? Qu'entends tu par faire une pause ?

Lien vers le commentaire
Partager sur d’autres sites

  • 1 month later...

bonjour,

j'utilise FileOutputStream pour généré un fichier test.csv depuis mon application. Lorsque je lance l'application depuis l'émulateur je vois bien le fichier qui se crée dans data/data/com.monapplication/ Mais pas dans le mnt/sdcard. Quand j'éxécute mon appli sur ma tablette (Acer A500) le fichier se crée (je le sais via un toast), mais impoosible de savoir où. J'ai bien pensé dans sdcard/Android/data mais je n'ai pas de dossier com.mon application.

J'ai bien la permission :WRITE_EXTERNAL_STORAGE dans mon Manifest.

Voici mon code :

public void ecrirefich2(){


   try {
			 FileOutputStream fos = monapplicationlActivity.this.openFileOutput("test.csv", Context.MODE_WORLD_READABLE|Context.MODE_WORLD_WRITEABLE);
			 OutputStreamWriter writer = new OutputStreamWriter(fos);


				 StringBuilder buffer = new StringBuilder();
				 String idPers = "ggg";
				 String nomPers = "iiii";
				 String prenomPers = "ttt";
				 String agePers = "125";
				 buffer.append(idPers);
				 buffer.append(';');
				 buffer.append(nomPers);
				 buffer.append(';');
				 buffer.append(prenomPers);
				 buffer.append(';');
				 buffer.append(agePers);
				 buffer.append("\n");

				 writer.write(buffer.toString());




			 writer.close();
			 fos.close();
			 Toast.makeText(monapplication.this, "Fichier généré avec succès", Toast.LENGTH_LONG).show();
		 }
		 catch (IOException e) {
						 // TODO Auto-generated catch block
						 e.printStackTrace();
		 }

 }

 });

}

Merci si vous avez une idée,! Je pense que je vais créer un sujet dédié....

Bribri

Modifié par Bribri54
Lien vers le commentaire
Partager sur d’autres sites

Rejoignez la conversation

Vous pouvez poster maintenant et vous enregistrez plus tard. Si vous avez un compte, connectez-vous maintenant pour poster.

Invité
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Répondre à ce sujet…

×   Collé en tant que texte enrichi.   Coller en tant que texte brut à la place

  Seulement 75 émoticônes maximum sont autorisées.

×   Votre lien a été automatiquement intégré.   Afficher plutôt comme un lien

×   Votre contenu précédent a été rétabli.   Vider l’éditeur

×   Vous ne pouvez pas directement coller des images. Envoyez-les depuis votre ordinateur ou insérez-les depuis une URL.

×
×
  • Créer...