使用 J2ME 删除文件会引发 IOException

Posted

技术标签:

【中文标题】使用 J2ME 删除文件会引发 IOException【英文标题】:Deleting a File using J2ME throws an IOException 【发布时间】:2009-01-29 03:49:21 【问题描述】:

我正在尝试使用 J2ME 的 FileConnection.delete() 方法删除文件,但每次调用 delete() 方法时都会引发 IOException。我写了一个条件语句来验证文件是否存在,但是不管这个事实,一个 IOException 被抛出。

根据FileConnection API,当对 FileConnection 对象调用 delete() 时,与该对象关联的所有流都将关闭,如果与特定文件关联的流发生任何后续操作,则会引发 IOException。

我尝试删除的文件已记录在同一个程序中,但在调用 delete() 方法后,我调用了 recordControl.reset()。这可能会导致抛出 IOException 吗?

我的问题可能是什么?

【问题讨论】:

希望熟悉 J2ME 的人可以帮助您,但是查看 JavaDoc,delete() 似乎不会抛出 IOException。你有完整的堆栈跟踪可用吗?这会告诉你究竟是什么导致了 IOException。 这发生在什么手机上?文件在哪个文件夹? 【参考方案1】:

我相信您代码中的某个人已连接到您要删除的文件。您应该手动关闭与现有文件的所有连接,不要相信其他人会为您执行此操作。

您是否已在其他应用程序(如记事本)中打开该文件?

【讨论】:

这对我来说就是这样,当我有这个的时候。假设您在 WTK 模拟器中运行。【参考方案2】:

异常堆栈跟踪会告诉您哪行代码抛出 IOException,有时您也会得到异常原因,所以请查看堆栈跟踪。

【讨论】:

【参考方案3】:

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

【讨论】:

以上是关于使用 J2ME 删除文件会引发 IOException的主要内容,如果未能解决你的问题,请参考以下文章

在 J2me 中读写数据

在 j2me 中无法打开三星手机上的相机

删除的 zip 文件会导致 e.Data.GetData("FileContents") 引发异常

清理项目和构建 J2me 项目时删除资源时出错

SpringBoot 上传文件突然报错 Failed to parse multipart servlet request; nested exception is java.io.IOExcepti

j2me中的xml解析