使用J2ME删除文件会抛出一个IOException异常。

3
我正在尝试使用J2ME的FileConnection.delete()方法删除文件,但每次调用delete()方法时都会抛出一个IOException异常。我已经编写了一个条件语句来验证文件是否存在,但无论如何都会抛出一个IOException异常。
根据FileConnection API,当在FileConnection对象上调用delete()方法时,与该对象关联的所有流都将关闭,并且如果对特定文件关联的流进行任何后续操作,则会抛出一个IOException异常。
我尝试删除的文件已在同一程序中记录,但在调用delete()方法后,我调用了recordControl.reset()。这可能会导致抛出IOException异常吗?
我的问题可能是什么?

希望熟悉J2ME的人能够帮助你,但是根据JavaDoc来看,delete()方法似乎不会抛出IOException异常。你是否有完整的堆栈跟踪信息?这将告诉你到底是什么导致了IOException异常。 - Eddie
这是在哪个手机上发生的?文件在哪个文件夹里? - michael aubert
3个回答

4

我相信你的代码中有连接到你想要删除的文件的部分。你应该手动关闭所有与现有文件的连接,不要相信其他人会为你做这件事。

你是否在另一个应用程序中打开了该文件,比如记事本?


这就是我的情况,当我遇到这个问题时。假设你正在运行WTK模拟器。 - izb

1

异常堆栈跟踪会告诉您哪一行代码抛出了IOException,有时还会给出异常的原因,因此请查看堆栈跟踪。


1

检查您传递给Connector.open()的包含路径的字符串,验证文件权限,在删除之前关闭打开的所有流。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接