Проверка файла SQLite - PullRequest
1 голос
/ 30 марта 2011

Есть быстрый вопрос.Я использую файл базы данных SQLite в моем приложении C #.На данный момент он не защищен паролем.Но это будет на тот случай, если это понадобится для решения моего вопроса.

Вопрос в том, есть ли способ проверить, является ли файл SQLite, связанный с моим приложением, настоящим файлом SQLite или нет.Я делаю проверку

File.Exists (filepath)

, которая работает нормально.Но возможно, что кто-то может создать файл с моим расширением, так как я могу убедиться, что это действительный файл Sqlite ????

Заранее спасибо!

1 Ответ

5 голосов
/ 30 марта 2011

Вы можете проверить первые 16 байтов в файле:

Хорошо известная 16-байтовая последовательность, которая начинается с каждого файла базы данных SQLite:

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

(из http://www.sqlite.org/fileformat.html)

То есть при условии, что защита паролем тоже не портит эти байты.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...