J'ai une application et je veux créer un fichier texte et y écrire quelque chose. J'utilise l'intention explicite pour sélectionner le dossier et créer un fichier, où mimeType = text/plainÉcrire une chaîne dans un fichier .txt, FileOutputStream ne fonctionne pas comme prévu
private void createFile(String mimeType, String fileName) {
Intent intent = new Intent(Intent.ACTION_CREATE_DOCUMENT);
intent.addCategory(Intent.CATEGORY_OPENABLE);
intent.setType(mimeType);
intent.putExtra(Intent.EXTRA_TITLE, fileName);
startActivityForResult(intent, WRITE_REQUEST_CODE);
}
après avoir créé le fichier que j'utilise onActivityResult pour y écrire
if (requestCode == WRITE_REQUEST_CODE && resultCode == Activity.RESULT_OK) {
Uri uri = resultData.getData();
String path = uri.getPath();
File file = new File(path);
String filename = file.getName();
try {
verifyStoragePermissions(this); //method to access storage
FileOutputStream outputStream = openFileOutput(filename,MODE_PRIVATE);
outputStream.write("Message to write".getBytes());
outputStream.flush();
outputStream.close();
} catch (Exception e) {
e.printStackTrace();
}
}
J'ai aussi permitions dans mon manifeste
Je n'obtiens pas d'erreur mais il n'y a rien d'écrit dans mon fichier.<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
Quelqu'un peut-il aider?
Que dois-je changer pour sauvegarder ceci en tant que fichier .xml? J'ai déjà changé mimeType mais ne fonctionne pas –
@IoannaDln: Je ne sais pas ce que vous voulez dire par "enregistrer ceci en tant que fichier .xml", désolé. Si vous demandez comment demander à l'utilisateur un emplacement pour un fichier XML, je m'attendrais à ce qu'un type MIME de 'text/xml' aide, bien qu'il n'y ait aucune exigence pour l'utilisateur de coller avec une extension de fichier particulière. – CommonsWare
au lieu de créer un fichier .txt Je veux créer un fichier .xml mais je reçois des fichiers vides sans données écrites –