Je suis relativement nouveau sur Android et je suis en train d'écrire sur un certain fichier. Ce que j'essaie de faire est d'utiliser la méthode TextToSpeech.synthesizeToFile() pour écrire un fichier audio. Cela fonctionne sauf que lorsque l'application se termine, le moteur TextToSpeech supprime automatiquement le fichier créé. J'ai alors essayé de faire une copie du fichier créé dans un autre répertoire. Pour ce faire, j'utilise la méthode copyFile() du package org.apache.commons.io.FileUtils. L'utilisation de cette méthode entraîne uniquement la création d'un fichier de taille 0 nouvellement créé. J'utilise Environment.getExternalStorageDirectory() pour obtenir le répertoire de stockage externe approprié. J'ai essayé d'écrire dans un répertoire existant tel que/mnt/sdcard/Ringtones/ainsi qu'un nouveau répertoire sous/mnt/sdcard/...Copie d'un fichier vers/depuis un stockage externe
Une autre chose que j'ai vérifiée était le résultat de File.canWrite () sur le fichier de destination. Cela retourne réellement faux, ce qui peut être un indice. Mais la méthode File.setWritable() ne semble pas exister pour changer cela.
J'utilise un code tel que ce qui suit et je n'ai vu aucune exception jetés
try {
File from = new File(tempDestFile);
File to = new File(permDestFile);
FileUtils.copyFile(from, to);
} catch(IOException e) {
Log.e(T, "Error copying file", e);
} catch(NullPointerException e) {
Log.e(T, "Error copying file", e);
}
Toutes les idées sur ce que je pourrais essayer? Rien de ce que j'ai trouvé jusqu'à maintenant m'a beaucoup aidé à ce sujet.
Merci! J'apprécie vraiment une telle ressource pour des sujets comme celui-ci.
Il semble que le problème est pas écrit au nouveau fichier, mais à la lecture du fichier créé avec TextToSpeech.synthesizeToFile().Je n'arrive pas à lire correctement ce fichier. Je ne peux pas le copier (ni manuellement ni par programme). C'est étrange. Quelqu'un at-il déjà utilisé avec succès TextToSpeech.synthesizeToFile()? – Trees