在我的Qt5.6.1程序中,我必须从QString获取Sha-1哈希,但是我得到的结果不正确。我正在尝试使用QCryptographicHash库。
QString str = "ABCDEFGH";
QString hash = QString::fromStdString(QCryptographicHash::hash(str.toStdString().c_str(), QCryptographicHash::Sha1).toStdString());
// hash == "?^??[?\u0000??v??\u0015??.b??v"
在这种情况下我应该改变什么?
答案 0 :(得分:3)
我认为这个答案对你来说对md5很有用 How to create MD5 hash in Qt?
而不是str.toStdString()。c_str()尝试使用str.toUtf8() 像这样形成了之前的答案
QString hash = QString("%1").arg(QString(QCryptographicHash::hash(str.toUtf8(),QCryptographicHash::Sha1).toHex()))