2011-03-30 7 views
7

referencia a esta pregunta:Android - Creación de una carpeta en la que los datos/datos/Embalaje/archivos del directorio

How to create files hierarchy in Androids '/data/data/pkg/files' directory?

Qué tipo de solución está ahí para este problema utilizando el incorporado en las bibliotecas estándar de Java, cómo ¿navego al directorio data/data/pkg y creo carpetas y archivos ahí? ¿Tal vez usando algunas de las llamadas de Android cuando sea posible?

Cuando un usuario utiliza mi aplicación, deseo guardar los archivos asociados con ese usuario en una carpeta pkg/files/username, para que pueda leer fácilmente estas carpetas más adelante. Mi otra opción es incluir el nombre de usuario en el nombre del archivo, pero este no es un método muy adecuado y limpio en mi opinión. .

método
+0

No entiendo cuál es tu pregunta - la pregunta se vincula a la respuesta ya tiene. Todo lo que necesita hacer es crear el directorio "nombre de usuario". – RivieraKid

Respuesta

17

getContext() getDir() es su amigo

File dir = ctx.getDir("my_sub_dir", Context.MODE_PRIVATE); 
File newfile = new File(topDirFile.getAbsolutePath() + File.separator + "new_file_name"); 
newfile.createNewFile(); 
BufferedOutputStream fout = new BufferedOutputStream(new FileOutputStream(newfile), 16 * 1024); 
+1

Una vez que he creado el directorio usando eso, ¿cómo puedo acceder usando openFileOutput()? ¿No solo arrojaría una excepción? – Tim

+0

getDir() devuelve una instancia de archivo. desde allí se puede obtener el uso getDir (DIR, ACCESS) .getAbsolutePath() + "/" + "archivo" para obtener la ruta real del archivo y luego simplemente usar FileInputStream – reflog

+0

obtengo una excepción cada vez que intento hacer un getDir() para archivos/nombre de usuario, diciendo que hay un separador de ruta ... ¿cómo se supone que debo crear un directorio donde lo quiero sin usar un separador de ruta? – Tim

Cuestiones relacionadas