c++ - 如何在 Qt 中创建 MD5 哈希?

标签 c++ qt hash md5

我想在 Qt 中创建一个 MD5 哈希码。

我的代码:

QString queryStr;
queryStr = QString("%1")
.arg(QString(QCryptographicHash::hash(ui->txtPassword->text(),QCryptographicHash::Md5).toHex()));

但是我的代码不起作用! hash 方法在 Qt 中不起作用!

有什么建议吗?

最佳答案

text() 返回QStringQCryptographicHash::hash 需要QByteArray 并且没有隐式转换,所以你应该自己做。使用这样的东西:

QString queryStr;

ui->lineEdit_2->setText("hash");
queryStr = QString("%1").arg(QString(QCryptographicHash::hash(ui->lineEdit_2->text().toUtf8(),QCryptographicHash::Md5).toHex()));
qDebug()<< queryStr;

在文档中,您可以看到另一个 mrthods,它返回 QByteArray。选择最适合您的。

http://qt-project.org/doc/qt-5/qstring.html

关于c++ - 如何在 Qt 中创建 MD5 哈希?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26823709/

相关文章:

C++ system() 导致 "Text file busy"错误

c++ - 通过引用 cpp 返回字符串

c++ - 短一 : invalid conversion from char to const char*

c++ - QAxObject 没有为 COM 对象创建槽信号

Qt 4.8.4 针对嵌入式 Linux 的交叉编译失败并出现 QNetworkProxy 错误

c# - Asp.net 身份哈希安全吗?

node.js - 由于 crypto.DEFAULT_ENCODING ='binary', Node 6 升级导致 aws-sdk 出现 SignatureDoesNotMatch 错误

c++ - int *pi = new int(0); 中 int(0) 的含义?

security - 密码散列、盐和散列值的存储

c++ - 具有 Qt 信号/槽的生产者/消费者