Apakah ada QString
fungsi yang dibutuhkan int dan output sebagai QString
?
Dan jika anda ingin memasukkannya ke string dalam teks konteks, melupakan +
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);
Selain itu untuk mengubah apa pun yang anda inginkan, anda dapat menggunakan QVariant
.
Untuk sebuah int
ke QString
anda mendapatkan:
QVariant(3).toString();
Yang mengapung
ke string
atau string
ke float
:
QVariant(3.2).toString();
QVariant("5.2").toFloat();
Namun pilihan lain adalah dengan menggunakan QTextStream dan <<
operator dalam banyak cara yang sama seperti yang anda akan gunakan cout
dalam C++:
QPoint point(5,1);
QString str;
QTextStream(&str) << "Mouse click: (" << point.x() << ", " << point.y() << ").";
// OUTPUT:
// Mouse click: (5, 1).
Karena operator <<()
telah kelebihan beban, anda dapat menggunakannya untuk beberapa jenis, bukan hanya int
. QString::arg()
kelebihan beban, misalnya arg(int a1, int a2)
, tapi tidak ada arg(int a1, QString a2)
, sehingga menggunakan QTextStream()
dan operator <<
nyaman ketika format string lagi dengan jenis campuran.
Hati-hati: Anda mungkin akan tergoda untuk menggunakan sprintf()
fasilitas untuk meniru gaya C printf()
pernyataan, tetapi dianjurkan untuk menggunakan QTextStream
atau arg()
karena mereka mendukung Unicode `string.
Saya selalu menggunakan QString::setNum()
.
int i = 10;
double d = 10.75;
QString str;
str.setNum(i);
str.setNum(d);
setNum()
kelebihan beban dalam banyak cara. Melihat QString
kelas referensi.
Dalam hal ini's bentuk yang paling sederhana, menggunakan jawaban dari Georg Fritzsche
Untuk sedikit canggih, anda dapat menggunakan ini,
QString QString::arg ( int a, int fieldWidth = 0, int base = 10, const QChar & fillChar = QLatin1Char( ' ' ) ) const
Mendapatkan dokumentasi dan contoh di sini..