Как я могу получить относительный путь папок в моем проекте с помощью кода?
Я создал новую папку в своем проекте, и я хочу его относительный путь так, неважно, где приложение, путь будет корректен.
Я пытаюсь сделать это в своем классе, который расширяется android.app.Activity
.
Возможно, что-то подобное для "получения пути к файлу от актива".
Используйте путь к классам.
ClassLoader classLoader = Thread.currentThread().getContextClassLoader();
URL url = classLoader.getResource("path/to/folder");
File file = new File(url.toURI());
// ...
Вы ищете корневую папку приложения? Тогда я бы использовал
String path = getClass().getClassLoader().getResource(".").getPath();
, чтобы «узнать, где я».
Вы можете проверить этот пример кода, чтобы понять, как получить доступ к относительному пути с помощью примера кода Java
import java.io.File;
public class MainClass {
public static void main(String[] args) {
File relative = new File("html/javafaq/index.html");
System.out.println("relative: ");
System.out.println(relative.getName());
System.out.println(relative.getPath());
}
}
Здесь getPath отобразит относительный путь к файлу.
В Android доступ к метаданным уровня приложения осуществляется через ссылку Context
, потомком которой является действие.
Например, вы можете получить исходный каталог с помощью свойства getApplicationInfo (). SourceDir
.
Существуют также методы для других папок (каталог ресурсов, каталог данных, каталог базы данных, так далее.).