¿Cómo puedo verificar si existe un directorio en la tarjeta SD en Android?Comprobar si existe directorio en la tarjeta SD de Android
Respuesta
archivo Java Regular IO:
File f = new File(Environment.getExternalStorageDirectory() + "/somedir");
if(f.isDirectory()) {
....
también posible que desee comprobar f.exists()
, porque si es que existe, y isDirectory()
vuelve falsa, tendrá un problema. También hay isReadable()
...
Compruebe here para conocer más métodos que pueden resultarle útiles.
File dir = new File(Environment.getExternalStorageDirectory() + "/mydirectory");
if(dir.exists() && dir.isDirectory()) {
// do something here
}
¿Es necesario marcar ambos si 'existe()' y 'esDirectorio()'? Quiero decir, ¿y si usamos alguno de ellos? – Mann
He cometido un error al verificar el archivo/directorio. De hecho, solo necesita llamar al isFile()
o isDirectory()
. Aquí está el docs
No necesita llamar al exists()
si alguna vez llama al isFile()
o isDirectory()
.
NOTA: El directorio anterior - http://download.oracle.com/javase/1.4.2/docs/api/java/io/File.html ya no existe. –
El siguiente código también funciona para los archivos de Java:
// Create file upload directory if it doesn't exist
if (!sdcarddir.exists())
sdcarddir.mkdir();
uso general de esta función de comprobación es un Dir existe:
public boolean dir_exists(String dir_path)
{
boolean ret = false;
File dir = new File(dir_path);
if(dir.exists() && dir.isDirectory())
ret = true;
return ret;
}
utilizar la función como:
String dir_path = Environment.getExternalStorageDirectory() + "//mydirectory//";
if (!dir_exists(dir_path)){
File directory = new File(dir_path);
directory.mkdirs();
}
if (dir_exists(dir_path)){
// 'Dir exists'
}else{
// Display Errormessage 'Dir could not creat!!'
}
Sí, lo he intentado mucho, debajo del código me ayuda :)
File folder = new File(Environment.getExternalStorageDirectory() + File.separator + "ur directory name");
if (!folder.exists()) {
Log.e("Not Found Dir", "Not Found Dir ");
} else {
Log.e("Found Dir", "Found Dir ");
Toast.makeText(getApplicationContext(),"Directory is already exist" ,Toast.LENGTH_SHORT).show();
}
- 1. Compruebe si existe archivo en la tarjeta SD en Android
- 2. Cómo verificar si un archivo existe en un directorio en la tarjeta SD
- 3. ¿Cómo saber si la tarjeta SD está montada en Android?
- 4. Android Guardar imagen en la tarjeta SD
- 5. ¿Existe un límite para la cantidad de archivos en un directorio en una tarjeta SD?
- 6. Permiso para escribir en la tarjeta SD
- 7. Eliminar una carpeta en la tarjeta SD
- 8. Almacenamiento de datos en la tarjeta SD en Android
- 9. Características de la tarjeta SD Android en Samsung Galaxy
- 10. mkdirs devuelve falso para el directorio en la tarjeta SD mientras el directorio principal es escribible
- 11. Escribiendo a la tarjeta SD
- 12. Servicio de reinicio para la aplicación en la tarjeta SD Cuando se repone la tarjeta SD
- 13. Android: muestra la imagen de la tarjeta SD
- 14. Android Guardado mapa de bits creado en el directorio de la tarjeta SD
- 15. escritura Android para carpeta de la tarjeta SD
- 16. Uso de la cámara sin tarjeta SD en Android
- 17. Android guardar Bitmap a tarjeta SD
- 18. Android - eliminar archivos en la tarjeta SD al desinstalar
- 19. Cómo guardar archivos en la tarjeta SD
- 20. Cómo verificar si la carpeta recién creada está presente en la tarjeta SD en Android
- 21. Android ¿Cuánto espacio hay libre en la tarjeta SD?
- 22. Mover aplicaciones a la tarjeta SD
- 23. Android se mueve al comportamiento de la tarjeta SD
- 24. android leyendo una imagen de la tarjeta SD
- 25. imágenes en la tarjeta SD de acceso
- 26. Escritura de la tarjeta SD de Android, Permiso denegado
- 27. ¿Cómo comprobar si el directorio ya existe en MFC (VC++)?
- 28. Instalación de la aplicación para Android sin tarjeta SD
- 29. Buscar etiqueta de volumen de tarjeta SD en Android
- 30. Android: eliminar una imagen de la tarjeta SD
Mi error solo resultó ser un directorio que falta en mi camino, pero gracias. Empecé a preguntarme si el sistema de archivos de Android no era compatible con los métodos normales como este :-P – Alxandr
Solo una nota, getExternalStorageDirectory() Puede que en realidad no apunte a la tarjeta sd física, podría apuntar a almacenamiento interno. http://developer.android.com/reference/android/os/Environment.html#getExternalStorageDirectory() – Chrispix
Chrispix, su comentario es engañoso. getExternalStorageDirectory() apuntará al almacenamiento que comparte datos en todas las aplicaciones. Esta podría ser la tarjeta SD, y para dispositivos sin tarjetas SD apunta al área de almacenamiento reservada que se utiliza como almacenamiento externo. El almacenamiento interno es donde se almacenan datos privados (para la aplicación, generalmente datos/datos). – Yash