Удаление файла с использованием J2ME вызывает исключение IOException
Я пытаюсь удалить файл с помощью метода FileConnection.delete() J2ME, но при каждом вызове метода delete() выдается исключение IOException. Я написал условное заявление для проверки существования файла, но независимо от этого факта, IOException выбрасывается.
В соответствии с API-интерфейсом FileConnection при вызове delete() для объекта FileConnection все потоки, связанные с объектом, закрываются, и выдается IOException, если происходят какие-либо последующие действия с потоками, связанными с конкретным файлом.
Файл, который я пытаюсь удалить, был записан в той же программе, но после того, как я вызываю метод delete(), я вызываю recordControl.reset(). Может ли это вызвать исключение IOException?
В чем может быть моя проблема?
3 ответа
Я считаю, что кто-то в вашем коде связан с файлом, который вы хотите удалить. Вы должны вручную закрыть все подключения к существующему файлу и не полагаться на то, что кто-то другой сделает это за вас.
У вас есть открыть файл в другом приложении, например блокнот?
Проверьте строку, включая путь, который вы передаете Connector.open(), Проверьте права доступа к файлу, закройте все потоки, открытые для этого файла перед удалением.
В трассировке стека исключений будет указано, какая строка кода вызывает исключение IOException, и в некоторых случаях вы также получаете причину исключения, поэтому взгляните на трассировку стека.