2011-04-28 26 views
9

quiero escribir en un archivo utilizando el siguiente:escritura de permisos de archivo en Android

   BufferedWriter buf = new BufferedWriter(new FileWriter("test2")); 
         buf.write(mytext); 
         buf.close(); 

pero me dio este mensaje (test2 de archivos de sólo lectura)

¿Cómo puedo obtener la escritura permiso

Respuesta

26

¿Lo tiene en su archivo AndroidManifest.xml?

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> 

Además, este enlace tiene todo lo que necesita saber acerca de los archivos de lectura y escritura:

http://www.anddev.org/working_with_files-t115.html

+1

gracias Mr.TehGoose. ¿Dónde puedo encontrar el archivo si uso el emulador o el dispositivo real? – m7m

+0

Citado del enlace proporcionado: "El archivo ahora se encuentra en la siguiente carpeta de su emulador: '/data/data/your_project_package_structure/files/samplefile.txt'" – NotACleverMan

3
byte[] data; 

dar valor imagebyte a la variable de datos

// Write to SD Card 
FileOutputStream outStream = new FileOutputStream(String.format("/sdcard/piyush.jpg", 
      System.currentTimeMillis())); 
     outStream.write(data); 
     outStream.close(); 

Dar Comentario Permiso Abrir archivo AndroidManifest.xml y poner este código

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />

+0

Parece que esta respuesta es incompleta. Creo que debería haber el agregado debajo de la línea" y poner este código ". – zaplec

0

Esta pregunta es bastante viejo, pero voy a escribir esta respuesta de todos modos ya que este es el primer resultado cuando se busca 'escritura de permisos de archivo en Android'

NotACleverMan de La respuesta es válida, pero desde el lanzamiento de MarshMallow, se debe solicitar a los usuarios que proporcionen el permiso de forma manual. Por lo tanto, al usuario se le debe presentar un diálogo donde puede denegar explícitamente u otorgar el permiso para usar alguna funcionalidad.

Tomado de la documentación de desarrolladores de Android

A partir de Android 6.0 (API nivel 23), el usuario otorga permisos para aplicaciones mientras la aplicación se está ejecutando, no cuando se instale la aplicación. Este enfoque agiliza el proceso de instalación de la aplicación, ya que el usuario no necesita otorgar permisos cuando instala o actualiza la aplicación. También le da al usuario más control sobre la funcionalidad de la aplicación; por ejemplo, un usuario puede elegir dar acceso a la cámara a una cámara, pero no a la ubicación del dispositivo. El usuario puede revocar los permisos en cualquier momento, yendo a la pantalla Configuración de la aplicación.

Por lo tanto, primero hay que incluir esto en su archivo de manifiesto

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> 

A partir de entonces, debe solicitar permiso al usuario cuando se necesita para acceder a la especificada de recursos

ActivityCompat.requestPermissions(thisActivity, 
      new String[]{Manifest.permission.WRITE_STORAGE}, 
      YOUR_PERMISSION_STATIC_CODE_IDENTIFIER); 

Para más detalles sobre la implementación, consulte this

Cuestiones relacionadas