使用 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的主要内容,如果未能解决你的问题,请参考以下文章
删除的 zip 文件会导致 e.Data.GetData("FileContents") 引发异常
SpringBoot 上传文件突然报错 Failed to parse multipart servlet request; nested exception is java.io.IOExcepti