Привет Всем! Есть такая проблема: Нужно преобразовать рисунок в текст (при помощи Base64), записать его в файл (получившийся текст), а потом обратно считать текст из файла и сделать обратное преобразование его в рисунок:
| Код | QFile origin("./test.jpg"),text("./test.txt"),vost("./vost.jpg"); QTextStream txts(&text); QDataStream rec(&vost); QByteArray img_or,img_vost;
//Чтение рисунка if(!origin.open(QIODevice::ReadOnly)) renturn; img_or=origin.readAll(); origin.close();
//Запись текста if(!text.open(QIODevice::WriteOnly)) renturn; txts<<img_or.toBase64(); text.close();
img_vost=img_or.toBase64();
//Запись восстановленного изображения в файл if(!vost.open(QIODevice::WriteOnly)) renturn; rec<<QByteArray::fromBase64(img_vost); vost.close();
|
Код облегчил, без повторного чтения из файла (с текстом base64). Но почему-то первые 3 байта не соответствуют оригиналу... =( Что делать? |