Я попытался запустить ваш код, и ошибка вызвана тем, как вы используете метод openFileOutput(String name, int mode)
.Заглянув внутрь LogCat, я вижу следующее исключение:
java.lang.IllegalArgumentException: File /mnt/sdcard/time_card.txt contains a path separator
Это указало мне направление ответа на этот вопрос , что, вероятно, также решит вашу проблему:
Context.openFileOutput предназначен для создания файлов, приватных для вашего приложения.Они идут в личный каталог данных вашего приложения.Вы указываете имя, а не путь
Документация для openFileOutput также указывает это на параметр имени функции:
Имяфайл для открытия;не может содержать разделители пути.
Для будущих ссылок, когда вы столкнетесь с такими проблемами, крайне важно, чтобы вы узнали, как использовать доступные вам инструменты, такие как LogCat.Без них вам будет трудно понять, что не так.Поэтому я рекомендую немного прочитать о том, как это сделать.