Используя из QT5, мне удалось создать массив байтов из txt-файла или изображения, использовать декодирование после и воссоздать файл правильно. Но, когда я попытался с .db-файлом (SQLITE), это не сработало.Как сделать QByteArray из файла базы данных
Я заметил, что когда вы открываете .db с текстовым редактором, вы увидите «формат SQLite 3», за которым следуют закодированные символы. После создания QByteArray из файла .db, за которым следует decode(), чтобы воссоздать файл, когда я открыл его текстовым редактором, файл содержит только текст «SQLite format 3».
Работает ли QByteArray с txt-файлом или файлом изображения?
Если это так, то как я могу сделать массив из байта из файла .db (SQLITE).
Благодаря
Update1 (Код сильфонных работ):
QFile file("C:/database.db");
if(!file.open(QIODevice::ReadOnly))
qDebug()<<"You are stupid!";
QByteArray byteArray = file.readAll();
QFile file2("C:/database2.db");
file2.open(QIODevice::WriteOnly);
file2.write(byteArray);
file2.close();
file.close();
Update2:
О декодировании я упомянул в моем первоначальный вопрос, я с помощью следующие:
QString QFile::decodeName(const QByteArray & localFileName)
, который не имеет смысла, когда вы внимательно читаете документацию и просто ошибаетесь. :)
Что вы имеете в виду 'декодировании()'? Продемонстрируйте минимальный автономный пример. Это должно быть легко, вы делаете что-то неправильно. –
Нет, 'QByteArray' не заботится о том, что внутри него. –