Hi, i have problem with keep binay file in MySQL, when i load file to QByteArray he has size 142652, after insert to MySQL his size is 279514. Why ??
File type is ".pdf" after load file to disk i cant open this file, i have error.
void OrderView::on_pushButtonSave_clicked()
{
{
byteArray = file.readAll();
file.close();
}
QSqlQuery query
("UPDATE `orders` SET `termsServiceFileName`=?,`termsServiceContent`=? WHERE `orderID`=?");
query.addBindValue( fileInfo.fileName() );
query.addBindValue( byteArray );
query.addBindValue( editOrderID );
query.exec();
QMessageBox::critical(this,
"",
QString::number( byteArray.
size() ));
//Message show "142652" but in MyPhpAdmin show "[BLOB - 273 KB]" WHY???
}
void OrderView::on_pushButtonLoad_clicked()
{
QSqlQuery query
("SELECT `termsServiceFileName`, `termsServiceContent` FROM `orders` WHERE `orderID`=?");
query.addBindValue( editOrderID );
query.exec();
query.next();
QByteArray byteArray
= query.
value(1).
toByteArray();
QMessageBox::critical(this,
"",
QString::number( byteArray.
size() ));
//Message show "279514"
{
file.write( byteArray );
file.close();
}
}
void OrderView::on_pushButtonSave_clicked()
{
QString filePath = QFileDialog::getOpenFileName(this);
QByteArray byteArray;
QFileInfo fileInfo(filePath);
QFile file(filePath);
if(file.open(QIODevice::ReadOnly))
{
byteArray = file.readAll();
file.close();
}
QSqlQuery query("UPDATE `orders` SET `termsServiceFileName`=?,`termsServiceContent`=? WHERE `orderID`=?");
query.addBindValue( fileInfo.fileName() );
query.addBindValue( byteArray );
query.addBindValue( editOrderID );
query.exec();
QMessageBox::critical(this,"", QString::number( byteArray.size() )); //Message show "142652" but in MyPhpAdmin show "[BLOB - 273 KB]" WHY???
}
void OrderView::on_pushButtonLoad_clicked()
{
QSqlQuery query("SELECT `termsServiceFileName`, `termsServiceContent` FROM `orders` WHERE `orderID`=?");
query.addBindValue( editOrderID );
query.exec();
query.next();
QByteArray byteArray = query.value(1).toByteArray();
QMessageBox::critical(this,"", QString::number( byteArray.size() )); //Message show "279514"
QString filePath = QFileDialog::getSaveFileName(this);
QFile file(filePath);
if(file.open(QIODevice::ReadWrite))
{
file.write( byteArray );
file.close();
}
}
To copy to clipboard, switch view to plain text mode
Bookmarks