Получить каталог из пути к файлу в java (android) Есть ли функция для получения части каталога пути к файлу? поэтому из String a="/root/sdcard/Pictures/img0001.jpg"; вы получаете "/root/sdcard/Pictures" Ответ 1 Да. Сначала создайте File, представляющий путь изображения: File file = new File(a); Если вы начинаете с относительного пути: file = new File(file.getAbsolutePath()); Затем получить родителя: String dir = file.getParent(); Или, если вы хотите, чтобы каталог был объектом File, File dirAsFile = file.getParentFile(); Ответ 2 Лучше, используйте getParent() из File класса.. String a="/root/sdcard/Pictures/img0001.jpg"; // A valid file path File file = new File(a); String getDirectoryPath = file.getParent(); // Only return path if physical file exist else return null http://developer.android.com/reference/java/io/File.html#getParent%28%29 Ответ 3 Вы также можете использовать FilenameUtils из Apache. Он предоставляет вам как минимум следующие функции для примера C:\dev\project\file.txt: префикс - C:\ путь - dev\project\ полный путь - C:\dev\project\ имя - file.txt базовое имя - файл расширение - txt Ответ 4 У меня есть решение по этому поводу через 4 дня. Обратите внимание на следующие моменты, указывая путь к классу File в Android (Java): Использовать путь для внутреннего хранилища String path = "/storage/sdcard0/myfile.txt"; путь = "/хранение/sdcard1/myfile.txt"; укажите разрешения в файле манифеста. <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" /> Сначала проверьте длину файла для подтверждения. Проверить пути в ES File Explorer относительно sdcard0 и sdcard1 - это то же самое, иначе...... например. File file=new File(path); long=file.length();//in Bytes
Ответ 1 Да. Сначала создайте File, представляющий путь изображения: File file = new File(a); Если вы начинаете с относительного пути: file = new File(file.getAbsolutePath()); Затем получить родителя: String dir = file.getParent(); Или, если вы хотите, чтобы каталог был объектом File, File dirAsFile = file.getParentFile();
Ответ 2 Лучше, используйте getParent() из File класса.. String a="/root/sdcard/Pictures/img0001.jpg"; // A valid file path File file = new File(a); String getDirectoryPath = file.getParent(); // Only return path if physical file exist else return null http://developer.android.com/reference/java/io/File.html#getParent%28%29
Ответ 3 Вы также можете использовать FilenameUtils из Apache. Он предоставляет вам как минимум следующие функции для примера C:\dev\project\file.txt: префикс - C:\ путь - dev\project\ полный путь - C:\dev\project\ имя - file.txt базовое имя - файл расширение - txt
Ответ 4 У меня есть решение по этому поводу через 4 дня. Обратите внимание на следующие моменты, указывая путь к классу File в Android (Java): Использовать путь для внутреннего хранилища String path = "/storage/sdcard0/myfile.txt"; путь = "/хранение/sdcard1/myfile.txt"; укажите разрешения в файле манифеста. <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" /> Сначала проверьте длину файла для подтверждения. Проверить пути в ES File Explorer относительно sdcard0 и sdcard1 - это то же самое, иначе...... например. File file=new File(path); long=file.length();//in Bytes