L'écriture d'un fichier de sdcard
Je suis en train d'écrire un fichier à partir d'un post Http répondre à un fichier sur le sdcard. Tout fonctionne bien jusqu'à ce que le tableau d'octets de données sont récupérées.
J'ai essayé de réglage WRITE_EXTERNAL_STORAGE
autorisation dans le manifeste
et essayé beaucoup de différentes combinaisons de tutoriels que j'ai trouvé sur le net.
Tout ce que je pouvais trouver était à l'aide de la openFileOutput("",MODE_WORLD_READABLE)
de la méthode, de l'activité, mais la façon dont mon application fichier est écrit à l'aide d'un fil. Plus précisément, un thread est appelé à partir d'un autre thread si un fichier doit être écrit,
afin de donner une activité objet n'a pas de travail, même si j'ai essayé.
L'application a parcouru un long chemin et je ne peux pas changer la façon dont l'application est actuellement écrit.
S'il vous plaît, quelqu'un peut m'aider?
CODE:
File file = new File(bgdmanip.savLocation);
FileOutputStream filecon = null;
filecon = new FileOutputStream(file);
byte[] myByte;
myByte = Base64Coder.decode(seReply);
bos.write(myByte);
filecon.write(myByte);
myvals = x * 11024;
bgdmanip.savLocation
détient l'ensemble du chemin d'accès aux fichiers. seReply
est une chaîne de réponse de HttpPost
réponse. Le deuxième ensemble de code est bouclée avec référence à x
. Le fichier est créé, mais reste à 0 octets.
Vous devez vous connecter pour publier un commentaire.
La
openFileOutput()
méthode écrit les données à l'application des données privées de la zone (pas la carte SD), donc ce n'est probablement pas ce que vous voulez. Vous devriez être en mesure d'appelerEnvironment.getExternalStorageDirectory()
pour obtenir le chemin d'accès racine de la carte SD et de les utiliser pour créer unFileOutputStream
. À partir de là, il suffit d'utiliser le standard de java.io routines.AVEC CE ÉGALEMENT ÉCRIRE CETTE PERMISSION Android.Manifeste
Voici un exemple: