J'ai cherché ce problème. Il a effectivement travaillé dans une version plus ancienne d'android, mais après avoir mis à jour le SDK, j'obtiens une erreur. Le message d'erreur est "ouvert déposé: ENOTDIR (pas un répertoire): /sdcard/PlayNumbers/mysdfile.xml" Pouvez-vous s'il vous plaît quelqu'un me signaler ce que j'ai mal fait ?? Mes codes sont ci-dessous.Écrire un fichier dans SDcard dans Android
Merci beaucoup,
path=new File("/sdcard/PlayNumbers");
myFile = new File(path,"mysdfile.xml");
if (!path.exists()) {
path.mkdirs();
}
if(!myFile.exists()){
myFile.createNewFile();
}
FileOutputStream fOut = new FileOutputStream(myFile);
OutputStreamWriter myOutWriter = new OutputStreamWriter(fOut);
myOutWriter.append("test");
myOutWriter.close();
fOut.close();
==>
File path = null;
File myFile = null;
String filePath = Environment.getExternalStorageDirectory().toString();
path=new File(filePath+"/PlayNumbers/");
myFile = new File(path,"mysdfile.xml");
//i also tried both as below
//path=new File(filePath+"/PlayNumbers");
//myFile = new File(path,"mysdfile.xml");
if (!path.exists()) {
path.mkdirs();
}
if(!myFile.exists()){
myFile.createNewFile();
}
FileOutputStream fOut = new FileOutputStream(myFile);
OutputStreamWriter myOutWriter = new OutputStreamWriter(fOut);
myOutWriter.append("test");
myOutWriter.close();
fOut.close();
P.S. ok, j'ai changé comme vous avez mentionné les gars comme mon code, mais ça me donne toujours la même erreur que ce n'est pas le répertoire ... aucune idée ???
Bonjour Husam A. Al-ahmadi, j'ai essayé mais ça donne toujours l'erreur ENOTDIR (mnt/sdcard/PlayNumbers/mysdfile.xml). En outre, j'ai l'autorisation external_storage. – redpotato
OK JMax, j'ai "/". J'ai écrit en tant que path = new File (filePath + "/ PlayNumbers"); .. Im toujours obtenir l'erreur. Je ne suis pas sûr de ce que je fais mal – redpotato
c'est juste faux. – GreyBeardedGeek