从QString获取Sha1哈希
问题描述:
在我的Qt5.6.1程序中,我必须从QString获得一个Sha-1哈希,但是我得到不正确的结果。我试图使用QCryptographicHash库。从QString获取Sha1哈希
QString str = "ABCDEFGH";
QString hash = QString::fromStdString(QCryptographicHash::hash(str.toStdString().c_str(), QCryptographicHash::Sha1).toStdString());
// hash == "?^??[?\u0000??v??\u0015??.b??v"
在这种情况下应该改变什么?
答
我想这个答案将是它是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()))
谢谢你,你的解决方案正在工作:) – km2442