Gibt es eine QString
Funktion, die eine int nimmt und sie als QString
ausgibt?Wie konvertiert man Int in QString?
Antwort
Verwendung QString::number()
:
int i = 42;
QString s = QString::number(i);
In der einfachsten Form, verwenden Sie die Antwort von Georg Fritzsche
Für ein bisschen fortgeschritten, Sie diese verwenden können,
QString QString::arg (int a, int fieldWidth = 0, int base = 10, const QChar & fillChar = QLatin1Char(' ')) const
Holen Sie sich das Dokumentation und ein Beispiel here ..
Leider funktioniert der Link zur Nokia Seite nicht mehr. –
Und wenn Sie es in Zeichenfolge innerhalb einiger Text Kontext setzen möchten, vergessen Sie +
Operator. einfach tun:
// 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);
Da Sie den Operator '+' erwähnen, achten Sie sorgfältig auf Ganzzahlen, da es sehr gut funktionieren kann, aber intern, wird die Operation 'operator + (const QString & s, char c)' aufgerufen, und die Zeichenfolge enthält die ganze Zahl nicht 'QChar :: fromAscii (c)' entspricht – x29a
Da Sie den + Operator erwähnen, können Sie es tatsächlich tun, aber verstehen, was passiert: QString p = s + QString :: number (1); S ist ein QString funktioniert perfekt. Also, im Grunde QString + QString ist in Ordnung, QString + int ** schlecht **. –
Ich benutze QString::setNum()
immer.
int i = 10;
double d = 10.75;
QString str;
str.setNum(i);
str.setNum(d);
setNum()
wird in vielerlei Hinsicht überlastet. Siehe QString
Klassenreferenz.
Eine weitere Option ist QTextStream und der <<
Betreiber in der gleichen Weise zu verwenden, wie Sie cout
in C++ verwenden würde:
QPoint point(5,1);
QString str;
QTextStream(&str) << "Mouse click: (" << point.x() << ", " << point.y() << ").";
// OUTPUT:
// Mouse click: (5, 1).
Da Betreiber <<()
überlastet ist, können Sie es für mehrere Typen verwenden, nicht nur int
. QString::arg()
ist überlastet, zum Beispiel arg(int a1, int a2)
, aber es gibt keine arg(int a1, QString a2)
, so dass QTextStream()
und Operator <<
bequem ist, wenn Sie längere Strings mit gemischten Typen formatieren.
Vorsicht: Sie könnten versucht sein, die sprintf()
Anlage zu verwenden C-Stil printf()
Aussagen zu imitieren, aber es wird empfohlen, QTextStream
oder arg()
zu verwenden, da sie Unicode string
s unterstützen.
Darüber hinaus konvertieren, was Sie wollen, können Sie QVariant
verwenden. Für eine int
zu einem QString
Sie erhalten:
QVariant(3).toString();
A float
zu einem string
oder einem string
mit einem Schwimmer:
QVariant(3.2).toString();
QVariant("5.2").toFloat();
'QVariant' Rulez! –
Nennt mich verrückt, aber ich würde mehr Nutzen aus der Frage als "Wie konvertiert man eine Nummer zu QString?", Dies als die wichtigste Antwort für leichte Konvertierungen, und die anderen Antworten für spezielle Behandlungen. – mr3
Nur der Vollständigkeit halber, können Sie die Standard-Bibliothek verwenden und tun QString qstr = QString::fromStdString(std::to_string(42));
- 1. Wie konvertiert man QString zu int?
- 2. Wie konvertiert man QString in std :: string?
- 3. Wie man ein QJsonObject in QString konvertiert
- 4. Wie konvertiert man QString in QDate in einem bestimmten Format?
- 5. Android Wie konvertiert man Int in String?
- 6. Wie konvertiert man String in int C#
- 7. Wie konvertiert man int in nsindexpath?
- 8. Wie konvertiert man int in enum Wert?
- 9. Wie konvertiert man jsonAST.Jint in int
- 10. Wie konvertiert man int in Zeichen?
- 11. Wie konvertiert man Etiketteninhalt in int
- 12. Wie konvertiert man von TimePrimitive zu int?
- 13. Wie konvertiert man BufferedImage zu einem int []?
- 14. Wie konvertiert man Nvarchar Spalte zu INT
- 15. Wie konvertiert man von Int zu Double?
- 16. Wie konvertiert man von int nach char *?
- 17. Wie konvertiert man double in int in swift
- 18. Wie konvertiert man NSNumber in int in Objective-C
- 19. Wie konvertiert man int (int64) in uint16 in golang?
- 20. Wie konvertiert man "Index" in Swift in "Int"?
- 21. Wie konvertiert man Long in Int in Kotlin?
- 22. Wie konvertiert man einen Int in NSData in Swift?
- 23. Wie konvertiert man den Int-Wert in Inch in PHP
- 24. In C#, Wie konvertiert man eine hexadezimale Zeichenfolge in int?
- 25. Wie konvertiert man ein Byte in ein Int in C#
- 26. int in NSString konvertiert
- 27. Wie konvertiert man ctypes 'c_long in Pythons int?
- 28. Wie konvertiert man JOptionPane String Input in einen Int?
- 29. Wie konvertiert man int in die JSP-Ausdrucksprache?
- 30. Wie konvertiert man NSIndexpath in NSInteger oder einfach int?
Hier ist die interessantere Frage: Gibt es einen schnelleren Weg? Ich habe ein Problem festgestellt, bei dem diese Version fast mehr Zeit in Anspruch nimmt als die gesamte Verarbeitung danach ... – Zeks
Dann möchten Sie wahrscheinlich an bereits zugewiesenen Puffern arbeiten ... aber das klingt nach einer eigenen Frage. –