Android系统中,如何判断一个文件正在被读取? 例如:如何判断一个视频正在被视频播放器播放?
3个回答
展开全部
public static void checkFile() throws Exception {
FileOutputStream fis = new FileOutputStream(new File("e:\\test.txt"));
FileChannel fc = fis.getChannel();
FileLock lock = fc.tryLock(); //给文件设置独占锁定
if(lock == null){
System.out.println("已被打开");
}else{
System.out.println("获取对此通道的文件的独占锁定。");
}
lock.release();
}
FileOutputStream fis = new FileOutputStream(new File("e:\\test.txt"));
FileChannel fc = fis.getChannel();
FileLock lock = fc.tryLock(); //给文件设置独占锁定
if(lock == null){
System.out.println("已被打开");
}else{
System.out.println("获取对此通道的文件的独占锁定。");
}
lock.release();
}
更多追问追答
追问
我试了一下,还是不行啊。总能获得文件锁,即使文件在被读取
追答
不会吧,我试了都可行的,你先用其他文本编辑器打开一个文件,然后运行这个程序去加锁,应该要打印已被打开的
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询