*.db-journal 是什么(android sqlite )数据库删除缓存

时间:2024-12-04 10:05:07

sqlite的官方文档,发现该文件是sqlite的一个临时的日志文件,主要用于sqlite数据库的事务回滚操作了。在事务开始时产生,在事务操作完毕时自动删除,当程序发生崩溃或一些意外情况让程序非法结束时,此文件便保存在了磁盘上,以便下次运行时进行事务回滚。

而android自己的一些机制,又使*.db-journal一直存在。即第一次操作数据库时,*.db-journal文件会被自动创建,且是永久的保存在磁盘中,不会被自动清除的,

private void displayFile() {

  try {

   long filesize=FileSizeUtil.getInstance().getFileSizes(

     getApplicationContext().getDatabasePath("yuxin.db-journal"));

   String cmd=FileSizeUtil.getInstance().FormetFileSize(filesize);

   tip14.setText("文件大小:"+cmd);

  } catch (Exception e) {

   e.printStackTrace();

  }

 }

//删除缓存文件

  File file=context.getDatabasePath("yuxin.db-journal");

  if (file.exists()) {

   file.delete();

  }