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.

Qt Code:
  1. void OrderView::on_pushButtonSave_clicked()
  2. {
  3. QString filePath = QFileDialog::getOpenFileName(this);
  4.  
  5. QByteArray byteArray;
  6. QFileInfo fileInfo(filePath);
  7. QFile file(filePath);
  8. if(file.open(QIODevice::ReadOnly))
  9. {
  10. byteArray = file.readAll();
  11. file.close();
  12. }
  13.  
  14. QSqlQuery query("UPDATE `orders` SET `termsServiceFileName`=?,`termsServiceContent`=? WHERE `orderID`=?");
  15. query.addBindValue( fileInfo.fileName() );
  16. query.addBindValue( byteArray );
  17. query.addBindValue( editOrderID );
  18. query.exec();
  19.  
  20. QMessageBox::critical(this,"", QString::number( byteArray.size() )); //Message show "142652" but in MyPhpAdmin show "[BLOB - 273 KB]" WHY???
  21.  
  22. }
  23.  
  24. void OrderView::on_pushButtonLoad_clicked()
  25. {
  26. QSqlQuery query("SELECT `termsServiceFileName`, `termsServiceContent` FROM `orders` WHERE `orderID`=?");
  27. query.addBindValue( editOrderID );
  28. query.exec();
  29. query.next();
  30.  
  31. QByteArray byteArray = query.value(1).toByteArray();
  32. QMessageBox::critical(this,"", QString::number( byteArray.size() )); //Message show "279514"
  33.  
  34.  
  35. QString filePath = QFileDialog::getSaveFileName(this);
  36. QFile file(filePath);
  37. if(file.open(QIODevice::ReadWrite))
  38. {
  39. file.write( byteArray );
  40. file.close();
  41. }
  42. }
To copy to clipboard, switch view to plain text mode