我想寻找位于SDCARD(外部存储)的文件。
我以只读模式打开它。RandomAccessFile寻求异常
in = new RandomAccessFile(filePath, "r");
从这个文件流中读取的一切都是好的,直到我想在文件中查找。
long seekPosition = 100;//sample value
in.seek(seekPosition);
查找位置当然不大于文件大小而不是负数。然而,我面临一个没有细节的例外。 这里是异常跟踪:
产生java.io.IOException
在java.io.RandomAccessFile.openCheck(RandomAccessFile.java:258)
在java.io.RandomAccessFile.seek(RandomAccessFile.java:648) ....
问题是为什么发生这种情况,我该如何解决它?
它与位于共享存储上的文件中的seek有关还是我在此过程中遗漏了某些内容?
我主要关心的是以随机访问方式访问文件字节。
显示比 – fge
我试图寻找到它更多的代码。 'openCheck()'抛出一个IOException异常:'检查文件当前是否打开。如果是,则默默返回,如果不是则抛出异常.' – Vikram
在调用seek之前是否可以关闭文件?此外,您的应用是否具有“访问外部存储”权限? – ethan