SQLite文件验证

Ran*_*ake 1 c# database sqlite

有一个简单的问题.我在我的C#应用​​程序中使用SQLite数据库文件.目前它没有密码保护.但是,如果需要它作为我的问题的解决方案.

问题是我有一种方法可以检查与我的应用程序关联的SQLite文件是否是真正的SQLite文件.我在做,

File.Exists(文件路径)

检查当下工作正常.但有可能有人可以用我的文件扩展名创建一个文件,所以如何验证它是一个有效的Sqlite文件????

提前致谢 !

C.E*_*uis 5

您可以检查文件中的前16个字节:

每个SQLite数据库文件开始的众所周知的16字节序列是:

0x53 0x51 0x4c 0x69 0x74 0x65 0x20 0x66 0x6f 0x72 0x6d 0x61 0x74 0x20 0x33 0x00

(来自http://www.sqlite.org/fileformat.html)

也就是说,假设密码保护不会使这些字节混乱.