我在temp文件夹中创建一个sqlite数据库。现在,我想将该文件复制到另一个文件夹。是否有任何sqlite命令重命名sqlite数据库文件?
我尝试在c ++中使用重命名函数,但返回错误18。错误18的意思是:“包含名称newname的目录必须与该文件位于同一文件系统上(由名称oldname指示)”。
有人可以建议一种更好的方法来做到这一点。
在正确的文件系统上使用一个临时目录!
首先,sqlite数据库只是一个文件。只要满足以下条件,就可以将其移动或复制:
因此,将其作为文件移动是正确的。现在有两种移动文件的方法:
rename系统调用。前者有很多优点:它不能保留部分写入的文件,不能保留两个文件,这非常快,并且如果使用它来重命名旧文件,则目标名称不会有句号。不存在(最后是POSIX语义,Windows可以在NTFS上执行,但FAT文件系统则不行)。它还有一个重要的缺点:它仅在文件系统内工作。因此,您必须:
/bin/mv为您执行此操作)。| 归档时间: | 
 | 
| 查看次数: | 3383 次 | 
| 最近记录: |