PrintWriter p;
try {
p = new PrintWriter(new FileWriter("xp.mdb"));
} catch (FileNotFoundException e) {
return;
} catch (IOException e) {
return;
}
p.println("mytext");
p.close();
Я новичок в программировании на Android и не совсем понимаю, как работает работа с файлами. Я хочу создать новый файл и написать ему текст. Вышеприведенный код работает на Windows, но на Android я просто продолжаю получать FileNotFoundException.Создайте текстовый файл с помощью PrintWriter
Как я могу создать файл, если он не существует?
Я вижу. Однако теперь у меня другая проблема. Метод, который делает запись, является статичным, и я не могу получить контекст. Это безопасно, если я использую абсолютный путь, например /data/data/my.app.package/mytext.txt? Просто попробовал это, и он работает. – Kidades
@ Kidades: «Является ли безопасным использовать абсолютный путь, например /data/data/my.app.package/mytext.txt?» - нет. Это приведет к сбою около ~ 1 миллиарда устройств (все Android 4.2 + планшеты и все Android 5.0+), когда приложение запускается кем-то другим, кроме основного пользователя устройства. Кажется, я вспоминаю дополнительные причины, по которым это не удастся на устройствах Android 6.0+, хотя подробности уберут меня прямо сейчас. Никогда не прокладывайте жесткие пути. – CommonsWare
@ Kidades: «Я не могу получить контекст» - передайте один в статический метод. Все, что вы начали, начиналось с некоторого «Контекста» (активность, сервис и т. Д.). – CommonsWare