Jawaban:
Gunakan QString::number():
int i = 42;
QString s = QString::number(i);
Dan jika Anda ingin memasukkannya ke dalam string dalam konteks teks tertentu, lupakan +operator. Cukup lakukan:
// Qt 5 + C++11
auto i = 13;
auto printable = QStringLiteral("My magic number is %1. That's all!").arg(i);
// Qt 5
int i = 13;
QString printable = QStringLiteral("My magic number is %1. That's all!").arg(i);
// Qt 4
int i = 13;
QString printable = QString::fromLatin1("My magic number is %1. That's all!").arg(i);
+operator, hati-hati di sekitar bilangan bulat, karena mungkin bekerja dengan baik tetapi secara internal, operator+(const QString &s, char c)implementasinya disebut, dan string tidak akan berisi bilangan bulat sebagai angka tetapi QChar::fromAscii(c)setara
Selain itu untuk mengonversi apa pun yang Anda inginkan, Anda dapat menggunakannya QVariant. Untuk intke QStringAnda mendapatkan:
QVariant(3).toString();
A floatke a stringatau stringke float:
QVariant(3.2).toString();
QVariant("5.2").toFloat();
QVariantrulez!
Namun pilihan lain adalah menggunakan QTextStream dan <<operator dengan cara yang sama seperti yang Anda gunakan coutdi C ++:
QPoint point(5,1);
QString str;
QTextStream(&str) << "Mouse click: (" << point.x() << ", " << point.y() << ").";
// OUTPUT:
// Mouse click: (5, 1).
Karena operator <<()kelebihan beban, Anda dapat menggunakannya untuk banyak jenis, bukan hanya int. QString::arg()kelebihan beban, misalnya arg(int a1, int a2), tetapi tidak ada arg(int a1, QString a2), jadi gunakan QTextStream()dan operator<< nyaman saat memformat string yang lebih panjang dengan tipe campuran.
Perhatian: Anda mungkin tergoda untuk menggunakan sprintf()fasilitas ini untuk meniru printf()pernyataan gaya C , tetapi disarankan untuk menggunakan QTextStreamatau arg()karena mereka mendukung Unicode strings.
Dalam bentuknya yang paling sederhana, gunakan jawaban Georg Fritzsche
Untuk sedikit mahir, Anda bisa menggunakan ini,
QString QString::arg ( int a, int fieldWidth = 0, int base = 10, const QChar & fillChar = QLatin1Char( ' ' ) ) const
Dapatkan dokumentasi dan contohnya di sini ..