Learn what Felgo offers to help your business succeed. Start your free evaluation today! Felgo for Your Business

QLocale Class

The QLocale class converts between numbers and their string representations in various languages. More...

Header: #include <QLocale>
CMake: find_package(Qt6 REQUIRED COMPONENTS Core)
target_link_libraries(mytarget PRIVATE Qt6::Core)
qmake: QT += core

Note: All functions in this class are reentrant with the following exceptions:

Public Types

enum Country { AnyCountry, AnyTerritory, Afghanistan, AlandIslands, Albania, …, Zimbabwe }
enum CurrencySymbolFormat { CurrencyIsoCode, CurrencySymbol, CurrencyDisplayName }
enum DataSizeFormat { DataSizeIecFormat, DataSizeTraditionalFormat, DataSizeSIFormat }
flags DataSizeFormats
enum FloatingPointPrecisionOption { FloatingPointShortest }
enum FormatType { LongFormat, ShortFormat, NarrowFormat }
enum Language { AnyLanguage, C, Abkhazian, Afan, Afar, …, Zulu }
enum LanguageCodeType { ISO639Part1, ISO639Part2B, ISO639Part2T, ISO639Part3, LegacyLanguageCode, …, AnyLanguageCode }
flags LanguageCodeTypes
enum MeasurementSystem { MetricSystem, ImperialUSSystem, ImperialUKSystem, ImperialSystem }
enum NumberOption { DefaultNumberOptions, OmitGroupSeparator, RejectGroupSeparator, OmitLeadingZeroInExponent, RejectLeadingZeroInExponent, …, RejectTrailingZeroesAfterDot }
flags NumberOptions
enum QuotationStyle { StandardQuotation, AlternateQuotation }
enum Script { AnyScript, AdlamScript, AhomScript, AnatolianHieroglyphsScript, ArabicScript, …, YiScript }
Territory

Public Functions

QLocale(const QLocale &other)
QLocale(QLocale::Language language, QLocale::Script script = AnyScript, QLocale::Territory territory = AnyTerritory)
QLocale(QLocale::Language language, QLocale::Territory territory)
QLocale(QStringView name)
QLocale(const QString &name)
QLocale()
QLocale & operator=(const QLocale &other)
~QLocale()
QString amText() const
QString bcp47Name() const
QLocale collation() const
QString createSeparatedList(const QStringList &list) const
QString currencySymbol(QLocale::CurrencySymbolFormat format = CurrencySymbol) const
QString dateFormat(QLocale::FormatType format = LongFormat) const
QString dateTimeFormat(QLocale::FormatType format = LongFormat) const
QString dayName(int day, QLocale::FormatType type = LongFormat) const
QString decimalPoint() const
QString exponential() const
Qt::DayOfWeek firstDayOfWeek() const
QString formattedDataSize(qint64 bytes, int precision = 2, QLocale::DataSizeFormats format = DataSizeIecFormat) const
QString groupSeparator() const
QLocale::Language language() const
QLocale::MeasurementSystem measurementSystem() const
QString monthName(int month, QLocale::FormatType type = LongFormat) const
QString name() const
QString nativeLanguageName() const
QString nativeTerritoryName() const
QString negativeSign() const
QLocale::NumberOptions numberOptions() const
QString percent() const
QString pmText() const
QString positiveSign() const
QString quoteString(const QString &str, QLocale::QuotationStyle style = StandardQuotation) const
QString quoteString(QStringView str, QLocale::QuotationStyle style = StandardQuotation) const
QLocale::Script script() const
void setNumberOptions(QLocale::NumberOptions options)
QString standaloneDayName(int day, QLocale::FormatType type = LongFormat) const
QString standaloneMonthName(int month, QLocale::FormatType type = LongFormat) const
void swap(QLocale &other)
QLocale::Territory territory() const
Qt::LayoutDirection textDirection() const
QString timeFormat(QLocale::FormatType format = LongFormat) const
QString toCurrencyString(qlonglong value, const QString &symbol = QString()) const
QString toCurrencyString(qulonglong value, const QString &symbol = QString()) const
QString toCurrencyString(short value, const QString &symbol = QString()) const
QString toCurrencyString(ushort value, const QString &symbol = QString()) const
QString toCurrencyString(int value, const QString &symbol = QString()) const
QString toCurrencyString(uint value, const QString &symbol = QString()) const
QString toCurrencyString(double value, const QString &symbol = QString(), int precision = -1) const
QString toCurrencyString(float i, const QString &symbol = QString(), int precision = -1) const
QDate toDate(const QString &string, QLocale::FormatType format = LongFormat) const
QDate toDate(const QString &string, const QString &format) const
QDate toDate(const QString &string, QLocale::FormatType format, QCalendar cal) const
QDate toDate(const QString &string, const QString &format, QCalendar cal) const
QDateTime toDateTime(const QString &string, QLocale::FormatType format = LongFormat) const
QDateTime toDateTime(const QString &string, const QString &format) const
QDateTime toDateTime(const QString &string, QLocale::FormatType format, QCalendar cal) const
QDateTime toDateTime(const QString &string, const QString &format, QCalendar cal) const
double toDouble(const QString &s, bool *ok = nullptr) const
double toDouble(QStringView s, bool *ok = nullptr) const
float toFloat(const QString &s, bool *ok = nullptr) const
float toFloat(QStringView s, bool *ok = nullptr) const
int toInt(const QString &s, bool *ok = nullptr) const
int toInt(QStringView s, bool *ok = nullptr) const
long toLong(const QString &s, bool *ok = nullptr) const
long toLong(QStringView s, bool *ok = nullptr) const
qlonglong toLongLong(const QString &s, bool *ok = nullptr) const
qlonglong toLongLong(QStringView s, bool *ok = nullptr) const
QString toLower(const QString &str) const
short toShort(const QString &s, bool *ok = nullptr) const
short toShort(QStringView s, bool *ok = nullptr) const
QString toString(qlonglong i) const
QString toString(qulonglong i) const
QString toString(long i) const
QString toString(ulong i) const
QString toString(short i) const
QString toString(ushort i) const
QString toString(int i) const
QString toString(uint i) const
QString toString(double f, char format = 'g', int precision = 6) const
QString toString(float f, char format = 'g', int precision = 6) const
QString toString(QDate date, const QString &format) const
QString toString(QTime time, const QString &format) const
QString toString(const QDateTime &dateTime, const QString &format) const
QString toString(QDate date, QStringView format) const
QString toString(QTime time, QStringView format) const
QString toString(const QDateTime &dateTime, QStringView format) const
QString toString(QDate date, QLocale::FormatType format = LongFormat) const
QString toString(QTime time, QLocale::FormatType format = LongFormat) const
QString toString(const QDateTime &dateTime, QLocale::FormatType format = LongFormat) const
QString toString(QDate date, QStringView format, QCalendar cal) const
QString toString(QDate date, QLocale::FormatType format, QCalendar cal) const
QString toString(const QDateTime &dateTime, QLocale::FormatType format, QCalendar cal) const
QString toString(const QDateTime &dateTime, QStringView format, QCalendar cal) const
QTime toTime(const QString &string, QLocale::FormatType format = LongFormat) const
QTime toTime(const QString &string, const QString &format) const
uint toUInt(const QString &s, bool *ok = nullptr) const
uint toUInt(QStringView s, bool *ok = nullptr) const
ulong toULong(const QString &s, bool *ok = nullptr) const
ulong toULong(QStringView s, bool *ok = nullptr) const
qulonglong toULongLong(const QString &s, bool *ok = nullptr) const
qulonglong toULongLong(QStringView s, bool *ok = nullptr) const
ushort toUShort(const QString &s, bool *ok = nullptr) const
ushort toUShort(QStringView s, bool *ok = nullptr) const
QString toUpper(const QString &str) const
QStringList uiLanguages() const
QList<Qt::DayOfWeek> weekdays() const
QString zeroDigit() const

Static Public Members

QLocale c()
QLocale::Language codeToLanguage(QStringView languageCode, QLocale::LanguageCodeTypes codeTypes = AnyLanguageCode)
QLocale::Script codeToScript(QStringView scriptCode)
QLocale::Territory codeToTerritory(QStringView territoryCode)
QString languageToCode(QLocale::Language language, QLocale::LanguageCodeTypes codeTypes = AnyLanguageCode)
QString languageToString(QLocale::Language language)
QList<QLocale> matchingLocales(QLocale::Language language, QLocale::Script script, QLocale::Territory territory)
QString scriptToCode(QLocale::Script script)
QString scriptToString(QLocale::Script script)
void setDefault(const QLocale &locale)
QLocale system()
QString territoryToCode(QLocale::Territory territory)
QString territoryToString(QLocale::Territory territory)
size_t qHash(const QLocale &key, size_t seed = 0)
bool operator!=(const QLocale &lhs, const QLocale &rhs)
bool operator==(const QLocale &lhs, const QLocale &rhs)

Detailed Description

QLocale is constructed for a specified language, optional script and territory. It offers various facilities for formatting data as text, localized appropriately, and for reading data out of localized text.

Example:

QLocale egyptian(QLocale::Arabic, QLocale::Egypt);
QString s1 = egyptian.toString(1.571429E+07, 'e');
QString s2 = egyptian.toString(10);

double d = egyptian.toDouble(s1);
int i = egyptian.toInt(s2);

QLocale supports the concept of a default locale, which is determined from the system's locale settings at application startup. The default locale can be changed by calling the static member setDefault(). Setting the default locale has the following effects:

  • If a QLocale object is constructed with the default constructor, it will use the default locale's settings.
  • QString::arg() uses the default locale to format a number when its position specifier in the format string contains an 'L', e.g. "%L1".

The following example illustrates how to use QLocale directly:

bool ok;
double d;

QLocale::setDefault(QLocale::C);      // uses '.' as a decimal point
QLocale cLocale;                      // default-constructed C locale
d = cLocale.toDouble("1234,56", &ok); // ok == false, d == 0
d = cLocale.toDouble("1234.56", &ok); // ok == true,  d == 1234.56

QLocale::setDefault(QLocale::German); // uses ',' as a decimal point
QLocale german;                       // default-constructed German locale
d = german.toDouble("1234,56", &ok);  // ok == true,  d == 1234.56
d = german.toDouble("1234.56", &ok);  // ok == false, d == 0

QLocale::setDefault(QLocale::English);
// Default locale now uses ',' as a group separator.
QString str = QString("%1 %L2 %L3").arg(12345).arg(12345).arg(12345, 0, 16);
// str == "12345 12,345 3039"

An alternative method for constructing a QLocale object is by specifying the locale name.

QLocale korean("ko");
QLocale swiss("de_CH");

This constructor reads the language, script and/or territory from the given name, accepting either uderscore or dash as separator (and ignoring any trailing .codeset or @variant suffix).

Note: For the current keyboard input locale take a look at QInputMethod::locale().

QLocale's data is based on Common Locale Data Repository v41.

Matching combinations of language, script and territory

QLocale has data, derived from CLDR, for many combinations of language, script and territory, but not all. If it is constructed with all three of these key values specified (treating AnyLanguage, AnyScript or AnyTerritory as unspecified) and QLocale has data for the given combination, this data is used. Otherwise, QLocale does its best to find a sensible combination of language, script and territory, for which it does have data, that matches those that were specified.

The CLDR provides tables of likely combinations, which are used to fill in any unspecified key or keys; if QLocale has data for the result of such a likely combination, that is used. If no language is specified, and none can be determined from script and territory, or if QLocale has no data for the language, the "C" locale (when reading the keys from a string) or default locale (otherwise) is used.

When QLocale has no data for the keys specified, with likely keys filled in where unspecified, but does have data for the resulting language, a fall-back is sought, based on ignoring either territory, script or both (in that order). This results in a QLocale which may not match what was asked for, but provides localization that's as suitable as the available data permits, for the keys specified.

Use language(), script() and territory() to determine the actual keys used.

See also QString::arg() and QInputMethod::locale().

Member Type Documentation

enum QLocale::Country

This enumerated type is used to identify a territory.

An individual territory may be a province of a country, a country (by far the most common case) or a larger geographic entity, to which some localization details are specific.

Constant Value Description
QLocale::AnyCountry AnyTerritory Osbolete alias for AnyTerritory
QLocale::AnyTerritory (since Qt 6.2) 0  
QLocale::Afghanistan 1  
QLocale::AlandIslands 2  
QLocale::Albania 3  
QLocale::Algeria 4  
QLocale::AmericanSamoa 5  
QLocale::Andorra 6  
QLocale::Angola 7  
QLocale::Anguilla 8  
QLocale::Antarctica 9  
QLocale::AntiguaAndBarbuda 10  
QLocale::Argentina 11  
QLocale::Armenia 12  
QLocale::Aruba 13  
QLocale::AscensionIsland 14  
QLocale::Australia 15  
QLocale::Austria 16  
QLocale::Azerbaijan 17  
QLocale::Bahamas 18  
QLocale::Bahrain 19  
QLocale::Bangladesh 20  
QLocale::Barbados 21  
QLocale::Belarus 22  
QLocale::Belgium 23  
QLocale::Belize 24  
QLocale::Benin 25  
QLocale::Bermuda 26  
QLocale::Bhutan 27  
QLocale::Bolivia 28  
QLocale::Bonaire CaribbeanNetherlands  
QLocale::BosniaAndHerzegowina BosniaAndHerzegovina Obsolete, use BosniaAndHerzegovina instead
QLocale::BosniaAndHerzegovina (since Qt 6.0) 29  
QLocale::Botswana 30  
QLocale::BouvetIsland 31  
QLocale::Brazil 32  
QLocale::BritishIndianOceanTerritory 33  
QLocale::BritishVirginIslands 34  
QLocale::Brunei 35  
QLocale::Bulgaria 36  
QLocale::BurkinaFaso 37  
QLocale::Burundi 38  
QLocale::Cambodia 39  
QLocale::Cameroon 40  
QLocale::Canada 41  
QLocale::CanaryIslands 42  
QLocale::CaribbeanNetherlands 44  
QLocale::CapeVerde 43  
QLocale::CaymanIslands 45  
QLocale::CentralAfricanRepublic 46  
QLocale::CeutaAndMelilla 47  
QLocale::Chad 48  
QLocale::Chile 49  
QLocale::China 50  
QLocale::ChristmasIsland 51  
QLocale::ClippertonIsland 52  
QLocale::CocosIslands 53  
QLocale::Colombia 54  
QLocale::Comoros 55  
QLocale::CongoBrazzaville 56  
QLocale::CongoKinshasa 57  
QLocale::CookIslands 58  
QLocale::CostaRica 59  
QLocale::Croatia 60  
QLocale::Cuba 61  
QLocale::Curacao (since Qt 6.0) 62  
QLocale::CuraSao Curacao Obsolete, use Curacao instead
QLocale::Cyprus 63  
QLocale::Czechia (since Qt 6.0) 64  
QLocale::CzechRepublic Czechia Obsolete, use Czechia instead
QLocale::DemocraticRepublicOfCongo CongoKinshasa Obsolete, use CongoKinshasa instead
QLocale::DemocraticRepublicOfKorea NorthKorea Obsolete, use NorthKorea instead
QLocale::Denmark 65  
QLocale::DiegoGarcia 66  
QLocale::Djibouti 67  
QLocale::Dominica 68  
QLocale::DominicanRepublic 69  
QLocale::EastTimor TimorLeste  
QLocale::Ecuador 70  
QLocale::Egypt 71  
QLocale::ElSalvador 72  
QLocale::EquatorialGuinea 73  
QLocale::Eritrea 74  
QLocale::Estonia 75  
QLocale::Eswatini 76  
QLocale::Ethiopia 77  
QLocale::EuropeanUnion (since Qt 5.7) 79  
QLocale::Europe (since Qt 5.12) 78  
QLocale::FalklandIslands 80  
QLocale::FaroeIslands 81  
QLocale::Fiji 82  
QLocale::Finland 83  
QLocale::France 84  
QLocale::FrenchGuiana 85  
QLocale::FrenchPolynesia 86  
QLocale::FrenchSouthernTerritories 87  
QLocale::Gabon 88  
QLocale::Gambia 89  
QLocale::Georgia 90  
QLocale::Germany 91  
QLocale::Ghana 92  
QLocale::Gibraltar 93  
QLocale::Greece 94  
QLocale::Greenland 95  
QLocale::Grenada 96  
QLocale::Guadeloupe 97  
QLocale::Guam 98  
QLocale::Guatemala 99  
QLocale::Guernsey 100  
QLocale::Guinea 102  
QLocale::GuineaBissau 101  
QLocale::Guyana 103  
QLocale::Haiti 104  
QLocale::HeardAndMcDonaldIslands 105  
QLocale::Honduras 106  
QLocale::HongKong 107  
QLocale::Hungary 108  
QLocale::Iceland 109  
QLocale::India 110  
QLocale::Indonesia 111  
QLocale::Iran 112  
QLocale::Iraq 113  
QLocale::Ireland 114  
QLocale::IsleOfMan 115  
QLocale::Israel 116  
QLocale::Italy 117  
QLocale::IvoryCoast 118  
QLocale::Jamaica 119  
QLocale::Japan 120  
QLocale::Jersey 121  
QLocale::Jordan 122  
QLocale::Kazakhstan 123  
QLocale::Kenya 124  
QLocale::Kiribati 125  
QLocale::Kosovo (since Qt 5.2) 126  
QLocale::Kuwait 127  
QLocale::Kyrgyzstan 128  
QLocale::Laos 129  
QLocale::LatinAmerica 130  
QLocale::LatinAmericaAndTheCaribbean LatinAmerica Obsolete, use LatinAmerica instead
QLocale::Latvia 131  
QLocale::Lebanon 132  
QLocale::Lesotho 133  
QLocale::Liberia 134  
QLocale::Libya 135  
QLocale::Liechtenstein 136  
QLocale::Lithuania 137  
QLocale::Luxembourg 138  
QLocale::Macao 139  
QLocale::Macau Macao  
QLocale::Macedonia 140  
QLocale::Madagascar 141  
QLocale::Malawi 142  
QLocale::Malaysia 143  
QLocale::Maldives 144  
QLocale::Mali 145  
QLocale::Malta 146  
QLocale::MarshallIslands 147  
QLocale::Martinique 148  
QLocale::Mauritania 149  
QLocale::Mauritius 150  
QLocale::Mayotte 151  
QLocale::Mexico 152  
QLocale::Micronesia 153  
QLocale::Moldova 154  
QLocale::Monaco 155  
QLocale::Mongolia 156  
QLocale::Montenegro 157  
QLocale::Montserrat 158  
QLocale::Morocco 159  
QLocale::Mozambique 160  
QLocale::Myanmar 161  
QLocale::Namibia 162  
QLocale::NauruCountry NauruTerritory Osbolete alias for NauruTerritory
QLocale::NauruTerritory (since Qt 6.2) 163  
QLocale::Nepal 164  
QLocale::Netherlands 165  
QLocale::NewCaledonia 166  
QLocale::NewZealand 167  
QLocale::Nicaragua 168  
QLocale::Niger 170  
QLocale::Nigeria 169  
QLocale::Niue 171  
QLocale::NorfolkIsland 172  
QLocale::NorthernMarianaIslands 173  
QLocale::NorthKorea 174  
QLocale::Norway 175  
QLocale::Oman 176  
QLocale::OutlyingOceania (since Qt 5.7) 177  
QLocale::Pakistan 178  
QLocale::Palau 179  
QLocale::PalestinianTerritories 180  
QLocale::Panama 181  
QLocale::PapuaNewGuinea 182  
QLocale::Paraguay 183  
QLocale::PeoplesRepublicOfCongo CongoBrazzaville Obsolete, use CongoBrazzaville instead
QLocale::Peru 184  
QLocale::Philippines 185  
QLocale::Pitcairn 186  
QLocale::Poland 187  
QLocale::Portugal 188  
QLocale::PuertoRico 189  
QLocale::Qatar 190  
QLocale::RepublicOfKorea SouthKorea Obsolete, use SouthKorea instead
QLocale::Reunion 191  
QLocale::Romania 192  
QLocale::RussianFederation Russia  
QLocale::Russia 193  
QLocale::Rwanda 194  
QLocale::SaintBarthelemy 195  
QLocale::SaintHelena 196  
QLocale::SaintKittsAndNevis 197  
QLocale::SaintLucia 198  
QLocale::SaintMartin 199  
QLocale::SaintPierreAndMiquelon 200  
QLocale::SaintVincentAndGrenadines 201  
QLocale::SaintVincentAndTheGrenadines SaintVincentAndGrenadines  
QLocale::Samoa 202  
QLocale::SanMarino 203  
QLocale::SaoTomeAndPrincipe 204  
QLocale::SaudiArabia 205  
QLocale::Senegal 206  
QLocale::Serbia 207  
QLocale::Seychelles 208  
QLocale::SierraLeone 209  
QLocale::Singapore 210  
QLocale::SintMaarten 211  
QLocale::Slovakia 212  
QLocale::Slovenia 213  
QLocale::SolomonIslands 214  
QLocale::Somalia 215  
QLocale::SouthAfrica 216  
QLocale::SouthGeorgiaAndSouthSandwichIslands 217  
QLocale::SouthGeorgiaAndTheSouthSandwichIslands SouthGeorgiaAndSouthSandwichIslands  
QLocale::SouthKorea 218  
QLocale::SouthSudan 219  
QLocale::Spain 220  
QLocale::SriLanka 221  
QLocale::Sudan 222  
QLocale::Suriname 223  
QLocale::SvalbardAndJanMayen 224  
QLocale::SvalbardAndJanMayenIslands SvalbardAndJanMayen  
QLocale::Swaziland Eswatini  
QLocale::Sweden 225  
QLocale::Switzerland 226  
QLocale::Syria 227  
QLocale::SyrianArabRepublic Syria Obsolete, use Syria instead
QLocale::Taiwan 228  
QLocale::Tajikistan 229  
QLocale::Tanzania 230  
QLocale::Thailand 231  
QLocale::TimorLeste 232  
QLocale::Togo 233  
QLocale::TokelauCountry TokelauTerritory Osbolete alias for TokelauTerritory
QLocale::TokelauTerritory (since Qt 6.2) 234  
QLocale::Tonga 235  
QLocale::TrinidadAndTobago 236  
QLocale::TristanDaCunha 237  
QLocale::Tunisia 238  
QLocale::Turkey 239  
QLocale::Turkmenistan 240  
QLocale::TurksAndCaicosIslands 241  
QLocale::TuvaluCountry TuvaluTerritory Osbolete alias for TuvaluTerritory
QLocale::TuvaluTerritory (since Qt 6.2) 242  
QLocale::Uganda 243  
QLocale::Ukraine 244  
QLocale::UnitedArabEmirates 245  
QLocale::UnitedKingdom 246  
QLocale::UnitedStates 248  
QLocale::UnitedStatesOutlyingIslands 247  
QLocale::UnitedStatesMinorOutlyingIslands UnitedStatesOutlyingIslands  
QLocale::UnitedStatesVirginIslands 249  
QLocale::Uruguay 250  
QLocale::Uzbekistan 251  
QLocale::Vanuatu 252  
QLocale::VaticanCity 253  
QLocale::VaticanCityState VaticanCity  
QLocale::Venezuela 254  
QLocale::Vietnam 255  
QLocale::WallisAndFutuna 256  
QLocale::WallisAndFutunaIslands WallisAndFutuna  
QLocale::WesternSahara 257  
QLocale::World (since Qt 5.12) 258  
QLocale::Yemen 259  
QLocale::Zambia 260  
QLocale::Zimbabwe 261  

Note: Use the Territory alias for this enumeration where possible. The Country enum shall be renamed to Territory at a later release.

See also territory(), territoryToString(), codeToTerritory(), and territoryToCode().

enum QLocale::CurrencySymbolFormat

Specifies the format of the currency symbol.

Constant Value Description
QLocale::CurrencyIsoCode 0 a ISO-4217 code of the currency.
QLocale::CurrencySymbol 1 a currency symbol.
QLocale::CurrencyDisplayName 2 a user readable name of the currency.

[since 5.10] enum QLocale::DataSizeFormat
flags QLocale::DataSizeFormats

Specifies the format for representation of data quantities.

Constant Value Description
QLocale::DataSizeIecFormat 0 format using base 1024 and IEC prefixes: KiB, MiB, GiB, ...
QLocale::DataSizeTraditionalFormat DataSizeSIQuantifiers format using base 1024 and SI prefixes: kB, MB, GB, ...
QLocale::DataSizeSIFormat DataSizeBase1000 | DataSizeSIQuantifiers format using base 1000 and SI prefixes: kB, MB, GB, ...

This enum was introduced or modified in Qt 5.10.

The DataSizeFormats type is a typedef for QFlags<DataSizeFormat>. It stores an OR combination of DataSizeFormat values.

See also formattedDataSize().

[since 5.7] enum QLocale::FloatingPointPrecisionOption

This enum defines a constant that can be given as precision to QString::number(), QByteArray::number(), and QLocale::toString() when converting floats or doubles, in order to express a variable number of digits as precision.

Constant Value Description
QLocale::FloatingPointShortest -128 The conversion algorithm will try to find the shortest accurate representation for the given number. "Accurate" means that you get the exact same number back from an inverse conversion on the generated string representation. In particular, trailing zeros are omitted (from the mantissa, in exponent formats).

This enum was introduced or modified in Qt 5.7.

See also toString(), QString::number(), and QByteArray::number().

enum QLocale::FormatType

This enum describes the different formats that can be used when converting QDate, QTime, and QDateTime objects, as well as months and days, to strings specific to the locale.

Constant Value Description
QLocale::LongFormat 0 Longer format.
QLocale::ShortFormat 1 Shorter format.
QLocale::NarrowFormat 2 A special version for use when space is very limited.

Note: NarrowFormat might contain the same text for different months and days. It can even be an empty string if the locale doesn't support narrow names, so you should avoid using it for date formatting. Also, for the system locale this format is the same as ShortFormat.

See also dateFormat(), timeFormat(), dateTimeFormat(), monthName(), standaloneMonthName(), dayName(), standaloneDayName(), toDate(), toTime(), and toDateTime().

enum QLocale::Language

This enumerated type is used to specify a language.

Constant Value Description
QLocale::AnyLanguage 0  
QLocale::C 1 A simplified English locale; see QLocale::c()
QLocale::Abkhazian 2  
QLocale::Afan Oromo Obsolete, please use Oromo
QLocale::Afar 3  
QLocale::Afrikaans 4  
QLocale::Aghem 5  
QLocale::Akan 6  
QLocale::Akkadian (since Qt 5.1) 7  
QLocale::Akoose (since Qt 5.3) 8  
QLocale::Albanian 9  
QLocale::AmericanSignLanguage (since Qt 5.7) 10  
QLocale::Amharic 11  
QLocale::AncientEgyptian (since Qt 5.1) 12  
QLocale::AncientGreek (since Qt 5.1) 13  
QLocale::Arabic 14  
QLocale::Aragonese (since Qt 5.1) 15  
QLocale::Aramaic (since Qt 5.1) 16  
QLocale::Armenian 17  
QLocale::Assamese 18  
QLocale::Asturian 19  
QLocale::Asu 20  
QLocale::Atsam 21  
QLocale::Avaric 22  
QLocale::Avestan 23  
QLocale::Aymara 24  
QLocale::Azerbaijani 25  
QLocale::Bafia 26  
QLocale::Balinese (since Qt 5.1) 27  
QLocale::Bambara 28  
QLocale::Bamun (since Qt 5.1) 29  
QLocale::Bangla (since Qt 6.0) 30  
QLocale::Basaa 31  
QLocale::Bashkir 32  
QLocale::Basque 33  
QLocale::BatakToba (since Qt 5.1) 34  
QLocale::Belarusian 35  
QLocale::Bemba 36  
QLocale::Bena 37  
QLocale::Bengali Bangla Obsolete, please use Bangla
QLocale::Bhojpuri (since Qt 5.7) 38  
QLocale::Bhutani Dzongkha Obsolete, please use Dzongkha
QLocale::Bislama 39  
QLocale::Blin 40  
QLocale::Bodo 41  
QLocale::Bosnian 42  
QLocale::Breton 43  
QLocale::Buginese (since Qt 5.1) 44  
QLocale::Bulgarian 45  
QLocale::Burmese 46  
QLocale::Byelorussian Belarusian Obsolete, please use Belarusian
QLocale::Cambodian Khmer Obsolete, please use Khmer
QLocale::Cantonese (since Qt 5.7) 47  
QLocale::Catalan 48  
QLocale::Cebuano (since Qt 5.14) 49  
QLocale::CentralAtlasTamazight (since Qt 6.0) 50  
QLocale::CentralKurdish (since Qt 5.5) 51  
QLocale::CentralMoroccoTamazight CentralAtlasTamazight Obsolete, please use CentralAtlasTamazight
QLocale::Chakma (since Qt 5.1) 52  
QLocale::Chamorro 53  
QLocale::Chechen 54  
QLocale::Cherokee 55  
QLocale::Chewa Nyanja Obsolete, please use Nyanja
QLocale::Chickasaw (since Qt 5.14) 56  
QLocale::Chiga 57  
QLocale::Chinese 58 (Mandarin)
QLocale::Church 59  
QLocale::Chuvash 60  
QLocale::Colognian 61  
QLocale::Coptic (since Qt 5.1) 62  
QLocale::Cornish 63  
QLocale::Corsican 64  
QLocale::Cree 65  
QLocale::Croatian 66  
QLocale::Czech 67  
QLocale::Danish 68  
QLocale::Divehi 69  
QLocale::Dogri (since Qt 5.1) 70  
QLocale::Duala 71  
QLocale::Dutch 72  
QLocale::Dzongkha 73  
QLocale::Embu 74  
QLocale::English 75  
QLocale::Erzya (since Qt 5.14) 76  
QLocale::Esperanto 77  
QLocale::Estonian 78  
QLocale::Ewe 79  
QLocale::Ewondo 80  
QLocale::Faroese 81  
QLocale::Fijian 82  
QLocale::Filipino 83  
QLocale::Finnish 84  
QLocale::French 85  
QLocale::Frisian WesternFrisian same as WesternFrisian
QLocale::Friulian 86  
QLocale::Fulah 87  
QLocale::Ga 89  
QLocale::Gaelic 88  
QLocale::Galician 90  
QLocale::Ganda 91  
QLocale::Geez 92  
QLocale::Georgian 93  
QLocale::German 94  
QLocale::Gothic (since Qt 5.1) 95  
QLocale::Greek 96  
QLocale::Greenlandic Kalaallisut Obsolete, please use Kalaallisut
QLocale::Guarani 97  
QLocale::Gujarati 98  
QLocale::Gusii 99  
QLocale::Haitian 100  
QLocale::Hausa 101  
QLocale::Hawaiian 102  
QLocale::Hebrew 103  
QLocale::Herero 104  
QLocale::Hindi 105  
QLocale::HiriMotu 106  
QLocale::Hungarian 107  
QLocale::Icelandic 108  
QLocale::Ido (since Qt 5.12) 109  
QLocale::Igbo 110  
QLocale::InariSami (since Qt 5.5) 111  
QLocale::Indonesian 112  
QLocale::Ingush (since Qt 5.1) 113  
QLocale::Interlingua 114  
QLocale::Interlingue 115  
QLocale::Inuktitut 116  
QLocale::Inupiak Inupiaq Obsolete, please use Inupiaq
QLocale::Inupiaq (since Qt 6.0) 117  
QLocale::Irish 118  
QLocale::Italian 119  
QLocale::Japanese 120  
QLocale::Javanese 121  
QLocale::Jju 122  
QLocale::JolaFonyi 123  
QLocale::Kabuverdianu 124  
QLocale::Kabyle 125  
QLocale::Kaingang (since Qt 6.3) 328  
QLocale::Kako 126  
QLocale::Kalaallisut (since Qt 6.0) 127  
QLocale::Kalenjin 128  
QLocale::Kamba 129  
QLocale::Kannada 130  
QLocale::Kanuri 131  
QLocale::Kashmiri 132  
QLocale::Kazakh 133  
QLocale::Kenyang (since Qt 5.5) 134  
QLocale::Khmer 135  
QLocale::Kiche (since Qt 5.5) 136  
QLocale::Kikuyu 137  
QLocale::Kinyarwanda 138  
QLocale::Kirghiz Kyrgyz Obsolete, please use Kyrgyz
QLocale::Komi 139  
QLocale::Kongo 140  
QLocale::Konkani 141  
QLocale::Korean 142  
QLocale::Koro 143  
QLocale::KoyraboroSenni 144  
QLocale::KoyraChiini 145  
QLocale::Kpelle 146  
QLocale::Kuanyama (since Qt 6.0) 147  
QLocale::Kurdish 148  
QLocale::Kurundi Rundi Obsolete, please use Rundi
QLocale::Kwanyama Kuanyama Obsolete, please use Kuanyama
QLocale::Kwasio 149  
QLocale::Kyrgyz (since Qt 6.0) 150  
QLocale::Lakota (since Qt 5.3) 151  
QLocale::Langi 152  
QLocale::Lao 153  
QLocale::Latin 154  
QLocale::Latvian 155  
QLocale::Lezghian (since Qt 5.5) 156  
QLocale::Limburgish 157  
QLocale::Lingala 158  
QLocale::LiteraryChinese (since Qt 5.7) 159  
QLocale::Lithuanian 160  
QLocale::Lojban (since Qt 5.12) 161  
QLocale::LowerSorbian (since Qt 5.5) 162  
QLocale::LowGerman 163  
QLocale::LubaKatanga 164  
QLocale::LuleSami (since Qt 5.5) 165  
QLocale::Luo 166  
QLocale::Luxembourgish 167  
QLocale::Luyia 168  
QLocale::Macedonian 169  
QLocale::Machame 170  
QLocale::Maithili (since Qt 5.5) 171  
QLocale::MakhuwaMeetto 172  
QLocale::Makonde 173  
QLocale::Malagasy 174  
QLocale::Malay 176  
QLocale::Malayalam 175  
QLocale::Maltese 177  
QLocale::Mandingo (since Qt 5.1) 178  
QLocale::Manipuri (since Qt 5.1) 179  
QLocale::Manx 180  
QLocale::Maori 181  
QLocale::Mapuche (since Qt 5.5) 182  
QLocale::Marathi 183  
QLocale::Marshallese 184  
QLocale::Masai 185  
QLocale::Mazanderani (since Qt 5.7) 186  
QLocale::Mende (since Qt 5.5) 187  
QLocale::Meru 188  
QLocale::Meta 189  
QLocale::Mohawk (since Qt 5.5) 190  
QLocale::Mongolian 191  
QLocale::Morisyen 192  
QLocale::Mundang 193  
QLocale::Muscogee (since Qt 5.14) 194  
QLocale::Nama 195  
QLocale::NauruLanguage 196  
QLocale::Navaho Navajo Obsolete, please use Navajo
QLocale::Navajo (since Qt 6.0) 197  
QLocale::Ndonga 198  
QLocale::Nepali 199  
QLocale::Newari (since Qt 5.7) 200  
QLocale::Ngiemboon 201  
QLocale::Nheengatu (since Qt 6.3) 329  
QLocale::NigerianPidgin (since Qt 6.0) 203  
QLocale::Ngomba 202  
QLocale::Nko (since Qt 5.5) 204  
QLocale::NorthernLuri (since Qt 5.7) 205  
QLocale::NorthernSami 206  
QLocale::NorthernSotho 207  
QLocale::NorthNdebele 208  
QLocale::NorwegianBokmal 209  
QLocale::NorwegianNynorsk 210  
QLocale::Nuer 211  
QLocale::Nyanja 212  
QLocale::Nyankole 213  
QLocale::Occitan 214  
QLocale::Odia (since Qt 6.0) 215  
QLocale::Ojibwa 216  
QLocale::OldIrish (since Qt 5.1) 217  
QLocale::OldNorse (since Qt 5.1) 218  
QLocale::OldPersian (since Qt 5.1) 219  
QLocale::Oriya Odia Obsolete, please use Odia
QLocale::Oromo 220  
QLocale::Osage (since Qt 5.7) 221  
QLocale::Ossetic 222  
QLocale::Pahlavi (since Qt 5.1) 223  
QLocale::Palauan (since Qt 5.7) 224  
QLocale::Pali 225  
QLocale::Papiamento (since Qt 5.7) 226  
QLocale::Pashto 227  
QLocale::Persian 228  
QLocale::Phoenician (since Qt 5.1) 229  
QLocale::Polish 230  
QLocale::Portuguese 231  
QLocale::Prussian (since Qt 5.5) 232  
QLocale::Punjabi 233  
QLocale::Quechua 234  
QLocale::RhaetoRomance Romansh Obsolete, please use Romansh
QLocale::Romanian 235  
QLocale::Romansh 236  
QLocale::Rombo 237  
QLocale::Rundi 238  
QLocale::Russian 239  
QLocale::Rwa 240  
QLocale::Saho 241  
QLocale::Sakha 242  
QLocale::Samburu 243  
QLocale::Samoan 244  
QLocale::Sango 245  
QLocale::Sangu 246  
QLocale::Sanskrit 247  
QLocale::Santali (since Qt 5.1) 248  
QLocale::Sardinian 249  
QLocale::Saurashtra (since Qt 5.1) 250  
QLocale::Sena 251  
QLocale::Serbian 252  
QLocale::Shambala 253  
QLocale::Shona 254  
QLocale::SichuanYi 255  
QLocale::Sicilian (since Qt 5.12) 256  
QLocale::Sidamo 257  
QLocale::Silesian (since Qt 5.14) 258  
QLocale::Sindhi 259  
QLocale::Sinhala 260  
QLocale::SkoltSami (since Qt 5.5) 261  
QLocale::Slovak 262  
QLocale::Slovenian 263  
QLocale::Soga 264  
QLocale::Somali 265  
QLocale::SouthernKurdish (since Qt 5.12) 266  
QLocale::SouthernSami (since Qt 5.5) 267  
QLocale::SouthernSotho 268  
QLocale::SouthNdebele 269  
QLocale::Spanish 270  
QLocale::StandardMoroccanTamazight (since Qt 5.3) 271  
QLocale::Sundanese 272  
QLocale::Swahili 273  
QLocale::Swati 274  
QLocale::Swedish 275  
QLocale::SwissGerman 276  
QLocale::Syriac 277  
QLocale::Tachelhit 278  
QLocale::Tahitian 279  
QLocale::TaiDam (since Qt 5.1) 280  
QLocale::Taita 281  
QLocale::Tajik 282  
QLocale::Tamil 283  
QLocale::Taroko 284  
QLocale::Tasawaq 285  
QLocale::Tatar 286  
QLocale::Telugu 287  
QLocale::Teso 288  
QLocale::Thai 289  
QLocale::Tibetan 290  
QLocale::Tigre 291  
QLocale::Tigrinya 292  
QLocale::TokelauLanguage (since Qt 5.7) 293  
QLocale::TokPisin (since Qt 5.7) 294  
QLocale::Tongan 295  
QLocale::Tsonga 296  
QLocale::Tswana 297  
QLocale::Turkish 298  
QLocale::Turkmen 299  
QLocale::TuvaluLanguage (since Qt 5.7) 300  
QLocale::Tyap 301  
QLocale::Ugaritic (since Qt 5.1) 302  
QLocale::Uighur Uyghur Obsolete, please use Uyghur
QLocale::Uigur Uyghur Obsolete, please use Uyghur
QLocale::Ukrainian 303  
QLocale::UpperSorbian (since Qt 5.5) 304  
QLocale::Urdu 305  
QLocale::Uyghur (since Qt 6.0) 306  
QLocale::Uzbek 307  
QLocale::Vai 308  
QLocale::Venda 309  
QLocale::Vietnamese 310  
QLocale::Volapuk 311  
QLocale::Vunjo 312  
QLocale::Walamo Wolaytta Obsolete, please use Wolaytta
QLocale::Walloon 313  
QLocale::Walser 314  
QLocale::Warlpiri (since Qt 5.5) 315  
QLocale::Welsh 316  
QLocale::WesternBalochi (since Qt 5.12) 317  
QLocale::WesternFrisian 318 same as Frisian
QLocale::Wolaytta (since Qt 6.0) 319  
QLocale::Wolof 320  
QLocale::Xhosa 321  
QLocale::Yangben 322  
QLocale::Yiddish 323  
QLocale::Yoruba 324  
QLocale::Zarma 325  
QLocale::Zhuang 326  
QLocale::Zulu 327  

See also language() and languageToString().

enum QLocale::LanguageCodeType
flags QLocale::LanguageCodeTypes

This enum defines language code types that can be used to restrict set of language codes considered by codeToLanguage and languageToCode.

Constant Value Description
QLocale::ISO639Part1 1 << 0 ISO 639 Part 1 Alpha 2 code.
QLocale::ISO639Part2B 1 << 1 ISO 639 Part 2 bibliographic Alpha 3 code.
QLocale::ISO639Part2T 1 << 2 ISO 639 Part 2 terminological Alpha 3 code.
QLocale::ISO639Part3 1 << 3 ISO 639 Part 3 Alpha 3 code.
QLocale::LegacyLanguageCode 1 << 15 Codes that are not part of the above set, but that were supported by Qt in the past. This value can only be used by codeToLanguage(). It is ignored when passed to languageToCode().
QLocale::ISO639Part2 ISO639Part2B | ISO639Part2T Any ISO 639 Part 2 code.
QLocale::ISO639Alpha2 ISO639Part1 Any ISO-639 2-letter code.
QLocale::ISO639Alpha3 ISO639Part2 | ISO639Part3 Any ISO-639 3-letter code.
QLocale::ISO639 ISO639Alpha2 | ISO639Alpha3 Any ISO 639 code.
QLocale::AnyLanguageCode -1 Specifies that any code can be used.

The LanguageCodeTypes type is a typedef for QFlags<LanguageCodeType>. It stores an OR combination of LanguageCodeType values.

enum QLocale::MeasurementSystem

This enum defines which units are used for measurement.

Constant Value Description
QLocale::MetricSystem 0 This value indicates metric units, such as meters, centimeters and millimeters.
QLocale::ImperialUSSystem 1 This value indicates imperial units, such as inches and miles as they are used in the United States.
QLocale::ImperialUKSystem 2 This value indicates imperial units, such as inches and miles as they are used in the United Kingdom.
QLocale::ImperialSystem ImperialUSSystem Provided for compatibility. Same as ImperialUSSystem

enum QLocale::NumberOption
flags QLocale::NumberOptions

This enum defines a set of options for number-to-string and string-to-number conversions. They can be retrieved with numberOptions() and set with setNumberOptions().

Constant Value Description
QLocale::DefaultNumberOptions 0x0 This option represents the default behavior, with group separators, with one leading zero in single digit exponents, and without trailing zeroes after the decimal dot.
QLocale::OmitGroupSeparator 0x01 If this option is set, the number-to-string functions will not insert group separators in their return values. The default is to insert group separators.
QLocale::RejectGroupSeparator 0x02 If this option is set, the string-to-number functions will fail if they encounter group separators in their input. The default is to accept numbers containing correctly placed group separators.
QLocale::OmitLeadingZeroInExponent 0x04 If this option is set, the number-to-string functions will not pad exponents with zeroes when printing floating point numbers in scientific notation. The default is to add one leading zero to single digit exponents.
QLocale::RejectLeadingZeroInExponent 0x08 If this option is set, the string-to-number functions will fail if they encounter an exponent padded with zeroes when parsing a floating point number in scientific notation. The default is to accept such padding.
QLocale::IncludeTrailingZeroesAfterDot 0x10 If this option is set, the number-to-string functions will pad numbers with zeroes to the requested precision in "g" or "most concise" mode, even if the number of significant digits is lower than the requested precision. The default is to omit trailing zeroes.
QLocale::RejectTrailingZeroesAfterDot 0x20 If this option is set, the string-to-number functions will fail if they encounter trailing zeroes after the decimal dot when parsing a number in scientific or decimal representation. The default is to accept trailing zeroes.

The NumberOptions type is a typedef for QFlags<NumberOption>. It stores an OR combination of NumberOption values.

See also setNumberOptions(), numberOptions(), and FloatingPointPrecisionOption.

enum QLocale::QuotationStyle

This enum defines a set of possible styles for locale specific quotation.

Constant Value Description
QLocale::StandardQuotation 0 If this option is set, the standard quotation marks will be used to quote strings.
QLocale::AlternateQuotation 1 If this option is set, the alternate quotation marks will be used to quote strings.

See also quoteString().

enum QLocale::Script

This enumerated type is used to specify a script.

Constant Value Description
QLocale::AnyScript 0  
QLocale::AdlamScript (since Qt 5.7) 1  
QLocale::AhomScript (since Qt 5.7) 2  
QLocale::AnatolianHieroglyphsScript (since Qt 5.7) 3  
QLocale::ArabicScript 4  
QLocale::ArmenianScript 5  
QLocale::AvestanScript (since Qt 5.1) 6  
QLocale::BalineseScript (since Qt 5.1) 7  
QLocale::BamumScript (since Qt 5.1) 8  
QLocale::BanglaScript (since Qt 6.0) 9  
QLocale::BassaVahScript (since Qt 5.5) 10  
QLocale::BatakScript (since Qt 5.1) 11  
QLocale::BengaliScript BanglaScript Obsolete, please use BanglaScript
QLocale::BhaiksukiScript (since Qt 5.7) 12  
QLocale::BopomofoScript (since Qt 5.1) 13  
QLocale::BrahmiScript (since Qt 5.1) 14  
QLocale::BrailleScript (since Qt 5.1) 15  
QLocale::BugineseScript (since Qt 5.1) 16  
QLocale::BuhidScript (since Qt 5.1) 17  
QLocale::CanadianAboriginalScript (since Qt 5.1) 18  
QLocale::CarianScript (since Qt 5.1) 19  
QLocale::CaucasianAlbanianScript (since Qt 5.5) 20  
QLocale::ChakmaScript (since Qt 5.1) 21  
QLocale::ChamScript (since Qt 5.1) 22  
QLocale::CherokeeScript 23  
QLocale::CopticScript (since Qt 5.1) 24  
QLocale::CuneiformScript (since Qt 5.1) 25  
QLocale::CypriotScript (since Qt 5.1) 26  
QLocale::CyrillicScript 27  
QLocale::DeseretScript (since Qt 5.1) 28  
QLocale::DevanagariScript 29  
QLocale::DuployanScript (since Qt 5.5) 30  
QLocale::EgyptianHieroglyphsScript (since Qt 5.1) 31  
QLocale::ElbasanScript (since Qt 5.5) 32  
QLocale::EthiopicScript 33  
QLocale::FraserScript (since Qt 5.1) 34  
QLocale::GeorgianScript 35  
QLocale::GlagoliticScript (since Qt 5.1) 36  
QLocale::GothicScript (since Qt 5.1) 37  
QLocale::GranthaScript (since Qt 5.5) 38  
QLocale::GreekScript 39  
QLocale::GujaratiScript 40  
QLocale::GurmukhiScript 41  
QLocale::HangulScript (since Qt 5.1) 42  
QLocale::HanScript (since Qt 5.1) 43  
QLocale::HanunooScript (since Qt 5.1) 44  
QLocale::HanWithBopomofoScript (since Qt 5.7) 45  
QLocale::HatranScript (since Qt 5.7) 46  
QLocale::HebrewScript 47  
QLocale::HiraganaScript (since Qt 5.1) 48  
QLocale::ImperialAramaicScript (since Qt 5.1) 49  
QLocale::InscriptionalPahlaviScript (since Qt 5.1) 50  
QLocale::InscriptionalParthianScript (since Qt 5.1) 51  
QLocale::JamoScript (since Qt 5.7) 52  
QLocale::JapaneseScript 53  
QLocale::JavaneseScript (since Qt 5.1) 54  
QLocale::KaithiScript (since Qt 5.1) 55  
QLocale::KannadaScript 56  
QLocale::KatakanaScript (since Qt 5.1) 57  
QLocale::KayahLiScript (since Qt 5.1) 58  
QLocale::KharoshthiScript (since Qt 5.1) 59  
QLocale::KhmerScript (since Qt 5.1) 60  
QLocale::KhojkiScript (since Qt 5.5) 61  
QLocale::KhudawadiScript (since Qt 5.5) 62  
QLocale::KoreanScript 63  
QLocale::LannaScript (since Qt 5.1) 64  
QLocale::LaoScript 65  
QLocale::LatinScript 66  
QLocale::LepchaScript (since Qt 5.1) 67  
QLocale::LimbuScript (since Qt 5.1) 68  
QLocale::LinearAScript (since Qt 5.5) 69  
QLocale::LinearBScript (since Qt 5.1) 70  
QLocale::LycianScript (since Qt 5.1) 71  
QLocale::LydianScript (since Qt 5.1) 72  
QLocale::MahajaniScript (since Qt 5.5) 73  
QLocale::MalayalamScript 74  
QLocale::MandaeanScript (since Qt 5.1) 75  
QLocale::ManichaeanScript (since Qt 5.5) 76  
QLocale::MarchenScript (since Qt 5.7) 77  
QLocale::MeiteiMayekScript (since Qt 5.1) 78  
QLocale::MendeScript (since Qt 6.0) 79  
QLocale::MendeKikakuiScript MendeScript Obsolete, please use MendeScript
QLocale::MeroiticCursiveScript (since Qt 5.1) 80  
QLocale::MeroiticScript (since Qt 5.1) 81  
QLocale::ModiScript (since Qt 5.5) 82  
QLocale::MongolianScript 83  
QLocale::MroScript (since Qt 5.5) 84  
QLocale::MultaniScript (since Qt 5.7) 85  
QLocale::MyanmarScript 86  
QLocale::NabataeanScript (since Qt 5.5) 87  
QLocale::NewaScript (since Qt 5.7) 88  
QLocale::NewTaiLueScript (since Qt 5.1) 89  
QLocale::NkoScript (since Qt 5.1) 90  
QLocale::OghamScript (since Qt 5.1) 92  
QLocale::OlChikiScript (since Qt 5.1) 93  
QLocale::OldHungarianScript (since Qt 5.7) 94  
QLocale::OldItalicScript (since Qt 5.1) 95  
QLocale::OldNorthArabianScript (since Qt 5.5) 96  
QLocale::OldPermicScript (since Qt 5.5) 97  
QLocale::OldPersianScript (since Qt 5.1) 98  
QLocale::OldSouthArabianScript (since Qt 5.1) 99  
QLocale::OdiaScript (since Qt 6.0) 91  
QLocale::OriyaScript OdiaScript Obsolete, please use OdiaScript
QLocale::OrkhonScript (since Qt 5.1) 100  
QLocale::OsageScript (since Qt 5.7) 101  
QLocale::OsmanyaScript (since Qt 5.1) 102  
QLocale::PahawhHmongScript (since Qt 5.5) 103  
QLocale::PalmyreneScript (since Qt 5.5) 104  
QLocale::PauCinHauScript (since Qt 5.5) 105  
QLocale::PhagsPaScript (since Qt 5.1) 106  
QLocale::PhoenicianScript (since Qt 5.1) 107  
QLocale::PollardPhoneticScript (since Qt 5.1) 108  
QLocale::PsalterPahlaviScript (since Qt 5.5) 109  
QLocale::RejangScript (since Qt 5.1) 110  
QLocale::RunicScript (since Qt 5.1) 111  
QLocale::SamaritanScript (since Qt 5.1) 112  
QLocale::SaurashtraScript (since Qt 5.1) 113  
QLocale::SharadaScript (since Qt 5.1) 114  
QLocale::ShavianScript (since Qt 5.1) 115  
QLocale::SiddhamScript (since Qt 5.5) 116  
QLocale::SignWritingScript (since Qt 5.7) 117  
QLocale::SimplifiedChineseScript SimplifiedHanScript same as SimplifiedHanScript
QLocale::SimplifiedHanScript 118 same as SimplifiedChineseScript
QLocale::SinhalaScript 119  
QLocale::SoraSompengScript (since Qt 5.1) 120  
QLocale::SundaneseScript (since Qt 5.1) 121  
QLocale::SylotiNagriScript (since Qt 5.1) 122  
QLocale::SyriacScript 123  
QLocale::TagalogScript (since Qt 5.1) 124  
QLocale::TagbanwaScript (since Qt 5.1) 125  
QLocale::TaiLeScript (since Qt 5.1) 126  
QLocale::TaiVietScript (since Qt 5.1) 127  
QLocale::TakriScript (since Qt 5.1) 128  
QLocale::TamilScript 129  
QLocale::TangutScript (since Qt 5.7) 130  
QLocale::TeluguScript 131  
QLocale::ThaanaScript 132  
QLocale::ThaiScript 133  
QLocale::TibetanScript 134  
QLocale::TifinaghScript 135  
QLocale::TirhutaScript (since Qt 5.5) 136  
QLocale::TraditionalChineseScript TraditionalHanScript same as TraditionalHanScript
QLocale::TraditionalHanScript 137 same as TraditionalChineseScript
QLocale::UgariticScript (since Qt 5.1) 138  
QLocale::VaiScript 139  
QLocale::VarangKshitiScript (since Qt 5.5) 140  
QLocale::YiScript 141  

See also script(), scriptToString(), and languageToString().

[alias] QLocale::Territory

This enumeration type is an alias for Country, which shall be renamed to Territory at a future release.

See also territory() and territoryToString().

Member Function Documentation

QLocale::QLocale(const QLocale &other)

Constructs a QLocale object as a copy of other.

QLocale::QLocale(QLocale::Language language, QLocale::Script script = AnyScript, QLocale::Territory territory = AnyTerritory)

Constructs a QLocale object for the specified language, script and territory.

If QLocale does not have data for the given combination, it will find data for as good a match as it can. It falls back on the default locale if

  • language is AnyLanguage and no language can be inferred from script and territory
  • QLocale has no data for the language, either given as language or inferred as above.

See also setDefault() and Matching combinations of language, script and territory.

QLocale::QLocale(QLocale::Language language, QLocale::Territory territory)

Constructs a QLocale object for the specified language and territory.

If there is more than one script in use for this combination, a likely script will be selected. If QLocale has no data for the specified language, the default locale is used. If QLocale has no data for the specified combination of language and territory, an alternative territory may be used instead.

See also setDefault() and Matching combinations of language, script and territory.

[since 6.3] QLocale::QLocale(QStringView name)

Constructs a QLocale object with the specified name.

The name has the format "language[_script][_territory][.codeset][@modifier]" or "C", where:

  • language is a lowercase, two-letter, ISO 639 language code (some three-letter codes are also recognized),
  • script is a capitalized, four-letter, ISO 15924 script code,
  • territory is an uppercase, two-letter, ISO 3166 territory code (some numeric codes are also recognized), and
  • codeset and modifier are ignored.

The separator can be either underscore '_' (U+005F, "low line") or a dash '-' (U+002D, "hyphen-minus"). If QLocale has no data for the specified combination of language, script, and territory, then it uses the most suitable match it can find instead. If the string violates the locale format, or no suitable data can be found for the specified keys, the "C" locale is used instead.

This constructor is much slower than QLocale(Language, Script, Territory) or QLocale(Language, Territory).

This function was introduced in Qt 6.3.

See also bcp47Name() and Matching combinations of language, script and territory.

QLocale::QLocale(const QString &name)

This is an overloaded function.

QLocale::QLocale()

Constructs a QLocale object initialized with the default locale.

If no default locale was set using setDefault(), this locale will be the same as the one returned by system().

See also setDefault() and system().

QLocale &QLocale::operator=(const QLocale &other)

Assigns other to this QLocale object and returns a reference to this QLocale object.

QLocale::~QLocale()

Destructor

QString QLocale::amText() const

Returns the localized name of the "AM" suffix for times specified using the conventions of the 12-hour clock.

See also pmText().

QString QLocale::bcp47Name() const

Returns the dash-separated language, script and country (and possibly other BCP47 fields) of this locale as a string.

Unlike the uiLanguages() the returned value of the bcp47Name() represents the locale name of the QLocale data but not the language the user-interface should be in.

This function tries to conform the locale name to BCP47.

See also language(), territory(), script(), and uiLanguages().

[static] QLocale QLocale::c()

Returns a QLocale object initialized to the "C" locale.

This locale is based on en_US but with various quirks of its own, such as simplified number formatting and its own date formatting. It implements the POSIX standards that describe the behavior of standard library functions of the "C" programming language.

Among other things, this means its collation order is based on the ASCII values of letters, so that (for case-sensitive sorting) all upper-case letters sort before any lower-case one (rather than each letter's upper- and lower-case forms sorting adjacent to one another, before the next letter's two forms).

See also system().

[static, since 6.3] QLocale::Language QLocale::codeToLanguage(QStringView languageCode, QLocale::LanguageCodeTypes codeTypes = AnyLanguageCode)

Returns the QLocale::Language enum corresponding to the two- or three-letter languageCode, as defined in the ISO 639 standards.

If specified, codeTypes selects which set of codes to consider for conversion. By default all codes known to Qt are considered. The codes are matched in the following order: ISO639Part1, ISO639Part2B, ISO639Part2T, ISO639Part3, LegacyLanguageCode.

If the code is invalid or not known QLocale::AnyLanguage is returned.

This function was introduced in Qt 6.3.

See also languageToCode(), codeToTerritory(), and codeToScript().

[static, since 6.1] QLocale::Script QLocale::codeToScript(QStringView scriptCode)

Returns the QLocale::Script enum corresponding to the four-letter script scriptCode, as defined in the ISO 15924 standard.

If the code is invalid or not known QLocale::AnyScript is returned.

This function was introduced in Qt 6.1.

See also scriptToCode(), codeToLanguage(), and codeToTerritory().

[static, since 6.2] QLocale::Territory QLocale::codeToTerritory(QStringView territoryCode)

Returns the QLocale::Territory enum corresponding to the two-letter or three-digit territoryCode, as defined in the ISO 3166 standard.

If the code is invalid or not known QLocale::AnyTerritory is returned.

This function was introduced in Qt 6.2.

See also territoryToCode(), codeToLanguage(), and codeToScript().

[since 5.13] QLocale QLocale::collation() const

Returns the locale to use for collation.

The result is usually this locale; however, the system locale (which is commonly the default locale) will return the system collation locale. The result is suitable for passing to QCollator's constructor.

This function was introduced in Qt 5.13.

See also QCollator.

QString QLocale::createSeparatedList(const QStringList &list) const

Returns a string that represents a join of a given list of strings with a separator defined by the locale.

QString QLocale::currencySymbol(QLocale::CurrencySymbolFormat format = CurrencySymbol) const

Returns a currency symbol according to the format.

QString QLocale::dateFormat(QLocale::FormatType format = LongFormat) const

Returns the date format used for the current locale.

If format is LongFormat, the format will be elaborate, otherwise it will be short. For example, LongFormat for the en_US locale is dddd, MMMM d, yyyy, ShortFormat is M/d/yy.

See also QDate::toString() and QDate::fromString().

QString QLocale::dateTimeFormat(QLocale::FormatType format = LongFormat) const

Returns the date time format used for the current locale.

If format is LongFormat, the format will be elaborate, otherwise it will be short. For example, LongFormat for the en_US locale is dddd, MMMM d, yyyy h:mm:ss AP t, ShortFormat is M/d/yy h:mm AP.

See also QDateTime::toString() and QDateTime::fromString().

QString QLocale::dayName(int day, QLocale::FormatType type = LongFormat) const

Returns the localized name of the day (where 1 represents Monday, 2 represents Tuesday and so on), in the format specified by type.

For example, if the locale is en_US and day is 1, LongFormat will return Monday, ShortFormat Mon, and NarrowFormat M.

See also monthName() and standaloneDayName().

QString QLocale::decimalPoint() const

Returns the decimal point character of this locale.

See also groupSeparator() and toString().

QString QLocale::exponential() const

Returns the exponential character of this locale, used to separate exponent from mantissa in some floating-point numeric representations.

See also toString(double, char, int).

Qt::DayOfWeek QLocale::firstDayOfWeek() const

Returns the first day of the week according to the current locale.

[since 5.10] QString QLocale::formattedDataSize(qint64 bytes, int precision = 2, QLocale::DataSizeFormats format = DataSizeIecFormat) const

Converts a size in bytes to a human-readable localized string, comprising a number and a quantified unit. The quantifier is chosen such that the number is at least one, and as small as possible. For example if bytes is 16384, precision is 2, and format is DataSizeIecFormat (the default), this function returns "16.00 KiB"; for 1330409069609 bytes it returns "1.21 GiB"; and so on. If format is DataSizeIecFormat or DataSizeTraditionalFormat, the given number of bytes is divided by a power of 1024, with result less than 1024; for DataSizeSIFormat, it is divided by a power of 1000, with result less than 1000. DataSizeIecFormat uses the new IEC standard quantifiers Ki, Mi and so on, whereas DataSizeSIFormat uses the older SI quantifiers k, M, etc., and DataSizeTraditionalFormat abuses them.

This function was introduced in Qt 5.10.

QString QLocale::groupSeparator() const

Returns the group separator character of this locale.

See also decimalPoint() and toString().

QLocale::Language QLocale::language() const

Returns the language of this locale.

See also script(), territory(), languageToString(), and bcp47Name().

[static, since 6.3] QString QLocale::languageToCode(QLocale::Language language, QLocale::LanguageCodeTypes codeTypes = AnyLanguageCode)

Returns the two- or three-letter language code for language, as defined in the ISO 639 standards.

If specified, codeTypes selects which set of codes to consider. The first code from the set that is defined for language is returned. Otherwise, all ISO-639 codes are considered. The codes are considered in the following order: ISO639Part1, ISO639Part2B, ISO639Part2T, ISO639Part3. LegacyLanguageCode is ignored by this function.

Note: For QLocale::C the function returns "C". For QLocale::AnyLanguage an empty string is returned. If the language has no code in any selected code set, an empty string is returned.

This function was introduced in Qt 6.3.

See also codeToLanguage(), language(), name(), bcp47Name(), territoryToCode(), and scriptToCode().

[static] QString QLocale::languageToString(QLocale::Language language)

Returns a QString containing the name of language.

See also territoryToString(), scriptToString(), and bcp47Name().

[static] QList<QLocale> QLocale::matchingLocales(QLocale::Language language, QLocale::Script script, QLocale::Territory territory)

Returns a list of valid locale objects that match the given language, script and territory.

Getting a list of all locales: QList<QLocale> allLocales = QLocale::matchingLocales(QLocale::AnyLanguage, QLocale::AnyScript, QLocale::AnyTerritory);

Getting a list of locales suitable for Russia: QList<QLocale> locales = QLocale::matchingLocales(QLocale::AnyLanguage, QLocale::AnyScript, QLocale::Russia);

QLocale::MeasurementSystem QLocale::measurementSystem() const

Returns the measurement system for the locale.

QString QLocale::monthName(int month, QLocale::FormatType type = LongFormat) const

Returns the localized name of month, in the format specified by type.

For example, if the locale is en_US and month is 1, LongFormat will return January. ShortFormat Jan, and NarrowFormat J.

See also dayName() and standaloneMonthName().

QString QLocale::name() const

Returns the language and country of this locale as a string of the form "language_country", where language is a lowercase, two-letter ISO 639 language code, and country is an uppercase, two- or three-letter ISO 3166 country code.

Note that even if QLocale object was constructed with an explicit script, name() will not contain it for compatibility reasons. Use bcp47Name() instead if you need a full locale name.

See also QLocale(), language(), script(), territory(), and bcp47Name().

QString QLocale::nativeLanguageName() const

Returns a native name of the language for the locale. For example "Schwiizertüütsch" for Swiss-German locale.

See also nativeTerritoryName() and languageToString().

[since 6.2] QString QLocale::nativeTerritoryName() const

Returns a native name of the territory for the locale. For example "España" for Spanish/Spain locale.

This function was introduced in Qt 6.2.

See also nativeLanguageName() and territoryToString().

QString QLocale::negativeSign() const

Returns the negative sign character of this locale.

See also positiveSign() and toString().

QLocale::NumberOptions QLocale::numberOptions() const

Returns the options related to number conversions for this QLocale instance.

By default, no options are set for the standard locales, except for the "C" locale, which has OmitGroupSeparator set by default.

See also setNumberOptions(), toString(), groupSeparator(), and FloatingPointPrecisionOption.

QString QLocale::percent() const

Returns the percent character of this locale.

See also toString().

QString QLocale::pmText() const

Returns the localized name of the "PM" suffix for times specified using the conventions of the 12-hour clock.

See also amText().

QString QLocale::positiveSign() const

Returns the positive sign character of this locale.

See also negativeSign() and toString().

QString QLocale::quoteString(const QString &str, QLocale::QuotationStyle style = StandardQuotation) const

Returns str quoted according to the current locale using the given quotation style.

[since 6.0] QString QLocale::quoteString(QStringView str, QLocale::QuotationStyle style = StandardQuotation) const

This is an overloaded function.

This function was introduced in Qt 6.0.

QLocale::Script QLocale::script() const

Returns the script of this locale.

See also language(), territory(), languageToString(), scriptToString(), and bcp47Name().

[static, since 6.1] QString QLocale::scriptToCode(QLocale::Script script)

Returns the four-letter script code for script, as defined in the ISO 15924 standard.

Note: For QLocale::AnyScript an empty string is returned.

This function was introduced in Qt 6.1.

See also script(), name(), bcp47Name(), languageToCode(), and territoryToCode().

[static] QString QLocale::scriptToString(QLocale::Script script)

Returns a QString containing the name of script.

See also languageToString(), territoryToString(), script(), and bcp47Name().

[static] void QLocale::setDefault(const QLocale &locale)

Sets the global default locale to locale. These values are used when a QLocale object is constructed with no arguments. If this function is not called, the system's locale is used.

Warning: In a multithreaded application, the default locale should be set at application startup, before any non-GUI threads are created.

Warning: This function is not reentrant.

See also system() and c().

void QLocale::setNumberOptions(QLocale::NumberOptions options)

Sets the options related to number conversions for this QLocale instance.

See also numberOptions() and FloatingPointPrecisionOption.

QString QLocale::standaloneDayName(int day, QLocale::FormatType type = LongFormat) const

Returns the localized name of the day (where 1 represents Monday, 2 represents Tuesday and so on) that is used as a standalone text, in the format specified by type.

If the locale information does not specify the standalone day name then return value is the same as in dayName().

See also dayName() and standaloneMonthName().

QString QLocale::standaloneMonthName(int month, QLocale::FormatType type = LongFormat) const

Returns the localized name of month that is used as a standalone text, in the format specified by type.

If the locale information doesn't specify the standalone month name then return value is the same as in monthName().

See also monthName() and standaloneDayName().

[since 5.6] void QLocale::swap(QLocale &other)

Swaps locale other with this locale. This operation is very fast and never fails.

This function was introduced in Qt 5.6.

[static] QLocale QLocale::system()

Returns a QLocale object initialized to the system locale.

The system locale may use system-specific sources for locale data, where available, otherwise falling back on QLocale's built-in database entry for the language, script and territory the system reports.

For example, on Windows and Mac, this locale will use the decimal/grouping characters and date/time formats specified in the system configuration panel.

See also c().

[since 6.2] QLocale::Territory QLocale::territory() const

Returns the territory of this locale.

This function was introduced in Qt 6.2.

See also language(), script(), territoryToString(), and bcp47Name().

[static, since 6.2] QString QLocale::territoryToCode(QLocale::Territory territory)

Returns the two-letter territory code for territory, as defined in the ISO 3166 standard.

Note: For QLocale::AnyTerritory an empty string is returned.

This function was introduced in Qt 6.2.

See also codeToTerritory(), territory(), name(), bcp47Name(), languageToCode(), and scriptToCode().

[static, since 6.2] QString QLocale::territoryToString(QLocale::Territory territory)

Returns a QString containing the name of territory.

This function was introduced in Qt 6.2.

See also languageToString(), scriptToString(), territory(), and bcp47Name().

Qt::LayoutDirection QLocale::textDirection() const

Returns the text direction of the language.

QString QLocale::timeFormat(QLocale::FormatType format = LongFormat) const

Returns the time format used for the current locale.

If format is LongFormat, the format will be elaborate, otherwise it will be short. For example, LongFormat for the en_US locale is h:mm:ss AP t, ShortFormat is h:mm AP.

See also QTime::toString() and QTime::fromString().

QString QLocale::toCurrencyString(qlonglong value, const QString &symbol = QString()) const

Returns a localized string representation of value as a currency. If the symbol is provided it is used instead of the default currency symbol.

See also currencySymbol().

QString QLocale::toCurrencyString(qulonglong value, const QString &symbol = QString()) const

This is an overloaded function.

QString QLocale::toCurrencyString(short value, const QString &symbol = QString()) const

This is an overloaded function.

QString QLocale::toCurrencyString(ushort value, const QString &symbol = QString()) const

This is an overloaded function.

QString QLocale::toCurrencyString(int value, const QString &symbol = QString()) const

This is an overloaded function.

QString QLocale::toCurrencyString(uint value, const QString &symbol = QString()) const

This is an overloaded function.

[since 5.7] QString QLocale::toCurrencyString(double value, const QString &symbol = QString(), int precision = -1) const

This function overloads toCurrencyString().

Returns a localized string representation of value as a currency. If the symbol is provided it is used instead of the default currency symbol. If the precision is provided it is used to set the precision of the currency value.

This function was introduced in Qt 5.7.

See also currencySymbol().

QString QLocale::toCurrencyString(float i, const QString &symbol = QString(), int precision = -1) const

This function overloads toCurrencyString().

QDate QLocale::toDate(const QString &string, QLocale::FormatType format = LongFormat) const

Reads string as a date in a locale-specific format.

Parses string and returns the date it represents. The format of the date string is chosen according to the format parameter (see dateFormat()).

Note: Month and day names, where used, must be given in the locale's language.

If the date could not be parsed, returns an invalid date.

See also dateFormat(), toTime(), toDateTime(), and QDate::fromString().

QDate QLocale::toDate(const QString &string, const QString &format) const

Reads string as a date in the given format.

Parses string and returns the date it represents. See QDate::fromString() for the interpretation of format.

Note: Month and day names, where used, must be given in the locale's language.

If the date could not be parsed, returns an invalid date.

See also dateFormat(), toTime(), toDateTime(), and QDate::fromString().

[since 5.14] QDate QLocale::toDate(const QString &string, QLocale::FormatType format, QCalendar cal) const

This is an overloaded function.

This function was introduced in Qt 5.14.

[since 5.14] QDate QLocale::toDate(const QString &string, const QString &format, QCalendar cal) const

This is an overloaded function.

This function was introduced in Qt 5.14.

QDateTime QLocale::toDateTime(const QString &string, QLocale::FormatType format = LongFormat) const

Reads string as a date-time in a locale-specific format.

Parses string and returns the date-time it represents. The format of the date string is chosen according to the format parameter (see dateFormat()).

Note: Month and day names, where used, must be given in the locale's language. Any am/pm indicators used must match amText() or pmText(), ignoring case.

If the string could not be parsed, returns an invalid QDateTime.

See also dateTimeFormat(), toTime(), toDate(), and QDateTime::fromString().

QDateTime QLocale::toDateTime(const QString &string, const QString &format) const

Reads string as a date-time in the given format.

Parses string and returns the date-time it represents. See QDateTime::fromString() for the interpretation of format.

Note: Month and day names, where used, must be given in the locale's language. Any am/pm indicators used must match amText() or pmText(), ignoring case.

If the string could not be parsed, returns an invalid QDateTime. If the string can be parsed and represents an invalid date-time (e.g. in a gap skipped by a time-zone transition), an invalid QDateTime is returned, whose toMSecsSinceEpoch() represents a near-by date-time that is valid. Passing that to fromMSecsSinceEpoch() will produce a valid date-time that isn't faithfully represented by the string parsed.

See also dateTimeFormat(), toTime(), toDate(), and QDateTime::fromString().

[since 5.14] QDateTime QLocale::toDateTime(const QString &string, QLocale::FormatType format, QCalendar cal) const

This is an overloaded function.

This function was introduced in Qt 5.14.

[since 5.14] QDateTime QLocale::toDateTime(const QString &string, const QString &format, QCalendar cal) const

This is an overloaded function.

This function was introduced in Qt 5.14.

double QLocale::toDouble(const QString &s, bool *ok = nullptr) const

Returns the double represented by the localized string s.

Returns an infinity if the conversion overflows or 0.0 if the conversion fails for any other reason (e.g. underflow).

If ok is not nullptr, failure is reported by setting *ok to false, and success by setting *ok to true.

This function does not fall back to the 'C' locale if the string cannot be interpreted in this locale.

bool ok;
double d;

QLocale c(QLocale::C);
d = c.toDouble("1234.56", &ok);  // ok == true,  d == 1234.56
d = c.toDouble("1,234.56", &ok); // ok == true,  d == 1234.56
d = c.toDouble("1234,56", &ok);  // ok == false, d == 0

QLocale german(QLocale::German);
d = german.toDouble("1234,56", &ok);  // ok == true,  d == 1234.56
d = german.toDouble("1.234,56", &ok); // ok == true,  d == 1234.56
d = german.toDouble("1234.56", &ok);  // ok == false, d == 0

d = german.toDouble("1.234", &ok);    // ok == true,  d == 1234.0

Notice that the last conversion returns 1234.0, because '.' is the thousands group separator in the German locale.

This function ignores leading and trailing whitespace.

See also toFloat(), toInt(), and toString().

[since 5.10] double QLocale::toDouble(QStringView s, bool *ok = nullptr) const

Returns the double represented by the localized string s.

Returns an infinity if the conversion overflows or 0.0 if the conversion fails for any other reason (e.g. underflow).

If ok is not nullptr, failure is reported by setting *ok to false, and success by setting *ok to true.

Unlike QString::toDouble(), this function does not fall back to the "C" locale if the string cannot be interpreted in this locale.

bool ok;
double d;

QLocale c(QLocale::C);
d = c.toDouble(u"1234.56", &ok);  // ok == true,  d == 1234.56
d = c.toDouble(u"1,234.56", &ok); // ok == true,  d == 1234.56
d = c.toDouble(u"1234,56", &ok);  // ok == false, d == 0

QLocale german(QLocale::German);
d = german.toDouble(u"1234,56", &ok);  // ok == true,  d == 1234.56
d = german.toDouble(u"1.234,56", &ok); // ok == true,  d == 1234.56
d = german.toDouble(u"1234.56", &ok);  // ok == false, d == 0

d = german.toDouble(u"1.234", &ok);    // ok == true,  d == 1234.0

Notice that the last conversion returns 1234.0, because '.' is the thousands group separator in the German locale.

This function ignores leading and trailing whitespace.

This function was introduced in Qt 5.10.

See also toFloat(), toInt(), and toString().

float QLocale::toFloat(const QString &s, bool *ok = nullptr) const

Returns the float represented by the localized string s.

Returns an infinity if the conversion overflows or 0.0 if the conversion fails for any other reason (e.g. underflow).

If ok is not nullptr, failure is reported by setting *ok to false, and success by setting *ok to true.

This function does not fall back to the 'C' locale if the string cannot be interpreted in this locale.

This function ignores leading and trailing whitespace.

See also toDouble(), toInt(), and toString().

[since 5.10] float QLocale::toFloat(QStringView s, bool *ok = nullptr) const

Returns the float represented by the localized string s.

Returns an infinity if the conversion overflows or 0.0 if the conversion fails for any other reason (e.g. underflow).

If ok is not nullptr, failure is reported by setting *ok to false, and success by setting *ok to true.

This function ignores leading and trailing whitespace.

This function was introduced in Qt 5.10.

See also toDouble(), toInt(), and toString().

int QLocale::toInt(const QString &s, bool *ok = nullptr) const

Returns the int represented by the localized string s.

If the conversion fails the function returns 0.

If ok is not nullptr, failure is reported by setting *ok to false, and success by setting *ok to true.

This function ignores leading and trailing whitespace.

See also toUInt() and toString().

[since 5.10] int QLocale::toInt(QStringView s, bool *ok = nullptr) const

Returns the int represented by the localized string s.

If the conversion fails, the function returns 0.

If ok is not nullptr, failure is reported by setting *ok to false, and success by setting *ok to true.

This function ignores leading and trailing whitespace.

This function was introduced in Qt 5.10.

See also toUInt() and toString().

[since 5.13] long QLocale::toLong(const QString &s, bool *ok = nullptr) const

Returns the long int represented by the localized string s.

If the conversion fails the function returns 0.

If ok is not nullptr, failure is reported by setting *ok to false, and success by setting *ok to true.

This function ignores leading and trailing whitespace.

This function was introduced in Qt 5.13.

See also toInt(), toULong(), toDouble(), and toString().

[since 5.13] long QLocale::toLong(QStringView s, bool *ok = nullptr) const

Returns the long int represented by the localized string s.

If the conversion fails the function returns 0.

If ok is not nullptr, failure is reported by setting *ok to false, and success by setting *ok to true.

This function ignores leading and trailing whitespace.

This function was introduced in Qt 5.13.

See also toInt(), toULong(), toDouble(), and toString().

qlonglong QLocale::toLongLong(const QString &s, bool *ok = nullptr) const

Returns the long long int represented by the localized string s.

If the conversion fails the function returns 0.

If ok is not nullptr, failure is reported by setting *ok to false, and success by setting *ok to true.

This function ignores leading and trailing whitespace.

See also toInt(), toULongLong(), toDouble(), and toString().

[since 5.10] qlonglong QLocale::toLongLong(QStringView s, bool *ok = nullptr) const

Returns the long long int represented by the localized string s.

If the conversion fails, the function returns 0.

If ok is not nullptr, failure is reported by setting *ok to false, and success by setting *ok to true.

This function ignores leading and trailing whitespace.

This function was introduced in Qt 5.10.

See also toInt(), toULongLong(), toDouble(), and toString().

QString QLocale::toLower(const QString &str) const

Returns a lowercase copy of str.

If Qt Core is using the ICU libraries, they will be used to perform the transformation according to the rules of the current locale. Otherwise the conversion may be done in a platform-dependent manner, with QString::toLower() as a generic fallback.

See also QString::toLower().

short QLocale::toShort(const QString &s, bool *ok = nullptr) const

Returns the short int represented by the localized string s.

If the conversion fails the function returns 0.

If ok is not nullptr, failure is reported by setting *ok to false, and success by setting *ok to true.

This function ignores leading and trailing whitespace.

See also toUShort() and toString().

[since 5.10] short QLocale::toShort(QStringView s, bool *ok = nullptr) const

Returns the short int represented by the localized string s.

If the conversion fails, the function returns 0.

If ok is not nullptr, failure is reported by setting *ok to false, and success by setting *ok to true.

This function ignores leading and trailing whitespace.

This function was introduced in Qt 5.10.

See also toUShort() and toString().

QString QLocale::toString(qlonglong i) const

Returns a localized string representation of i.

See also toLongLong(), numberOptions(), zeroDigit(), and positiveSign().

QString QLocale::toString(qulonglong i) const

This is an overloaded function.

See also toULongLong(), numberOptions(), zeroDigit(), and positiveSign().

QString QLocale::toString(long i) const

This is an overloaded function.

See also toLong().

QString QLocale::toString(ulong i) const

This is an overloaded function.

See also toULong().

QString QLocale::toString(short i) const

This is an overloaded function.

See also toShort().

QString QLocale::toString(ushort i) const

This is an overloaded function.

See also toUShort().

QString QLocale::toString(int i) const

This is an overloaded function.

See also toInt().

QString QLocale::toString(uint i) const

This is an overloaded function.

See also toUInt().

QString QLocale::toString(double f, char format = 'g', int precision = 6) const

This is an overloaded function.

Returns a string representing the floating-point number f.

The form of the representation is controlled by the format and precision parameters.

The format defaults to 'g'. It can be any of the following:

Format Meaning
'e' format as [-]9.9e[+|-]999
'E' format as [-]9.9E[+|-]999
'f' format as [-]9.9
'F' same as 'f' except for INF and NAN (see below)
'g' use 'e' or 'f' format, whichever is more concise
'G' use 'E' or 'F' format, whichever is more concise

For the 'e', 'E', 'f' and 'F' formats, the precision represents the number of digits after the decimal point. For the 'g' and 'G' formats, the precision represents the maximum number of significant digits (trailing zeroes are omitted). The special precision value QLocale::FloatingPointShortest selects the shortest representation that, when read as a number, gets back the original floating-point value. Aside from that, any negative precision is ignored in favor of the default, 6.

For the 'e', 'f' and 'g' formats, positive infinity is represented as "inf", negative infinity as "-inf" and floating-point NaN (not-a-number) values are represented as "nan". For the 'E', 'F' and 'G' formats, "INF" and "NAN" are used instead. This does not vary with locale.

See also toDouble(), numberOptions(), exponential(), decimalPoint(), zeroDigit(), positiveSign(), percent(), toCurrencyString(), formattedDataSize(), and QLocale::FloatingPointPrecisionOption.

QString QLocale::toString(float f, char format = 'g', int precision = 6) const

This is an overloaded function.

Returns a string representing the floating-point number f.

The format and precision have the same meanings as described in toString(double, char, int).

See also toFloat(), toDouble(), numberOptions(), exponential(), decimalPoint(), zeroDigit(), positiveSign(), percent(), toCurrencyString(), formattedDataSize(), and QLocale::FloatingPointPrecisionOption.

QString QLocale::toString(QDate date, const QString &format) const

Returns a localized string representation of the given date in the specified format. If format is an empty string, an empty string is returned.

See also QDate::toString().

QString QLocale::toString(QTime time, const QString &format) const

Returns a localized string representation of the given time according to the specified format. If format is an empty string, an empty string is returned.

See also QTime::toString().

QString QLocale::toString(const QDateTime &dateTime, const QString &format) const

Returns a localized string representation of the given dateTime according to the specified format. If format is an empty string, an empty string is returned.

See also QDateTime::toString(), QDate::toString(), and QTime::toString().

[since 5.10] QString QLocale::toString(QDate date, QStringView format) const

This is an overloaded function.

This function was introduced in Qt 5.10.

QString QLocale::toString(QTime time, QStringView format) const

Returns a localized string representation of the given time according to the specified format. If format is an empty string, an empty string is returned.

See also QTime::toString().

[since 5.10] QString QLocale::toString(const QDateTime &dateTime, QStringView format) const

This is an overloaded function.

This function was introduced in Qt 5.10.

QString QLocale::toString(QDate date, QLocale::FormatType format = LongFormat) const

This is an overloaded function.

QString QLocale::toString(QTime time, QLocale::FormatType format = LongFormat) const

Returns a localized string representation of the given time in the specified format (see timeFormat()).

QString QLocale::toString(const QDateTime &dateTime, QLocale::FormatType format = LongFormat) const

This is an overloaded function.

[since 5.14] QString QLocale::toString(QDate date, QStringView format, QCalendar cal) const

Returns a localized string representation of the given date in the specified format, optionally for a specified calendar cal. If format is an empty string, an empty string is returned.

This function was introduced in Qt 5.14.

See also QDate::toString().

[since 5.14] QString QLocale::toString(QDate date, QLocale::FormatType format, QCalendar cal) const

Returns a localized string representation of the given date according to the specified format (see dateFormat()), optionally for a specified calendar cal.

Note: Some locales may use formats that limit the range of years they can represent.

This function was introduced in Qt 5.14.

[since 5.14] QString QLocale::toString(const QDateTime &dateTime, QLocale::FormatType format, QCalendar cal) const

Returns a localized string representation of the given dateTime according to the specified format (see dateTimeFormat()), optionally for a specified calendar cal.

Note: Some locales may use formats that limit the range of years they can represent.

This function was introduced in Qt 5.14.

[since 5.14] QString QLocale::toString(const QDateTime &dateTime, QStringView format, QCalendar cal) const

Returns a localized string representation of the given dateTime according to the specified format, optionally for a specified calendar cal. If format is an empty string, an empty string is returned.

This function was introduced in Qt 5.14.

See also QDateTime::toString(), QDate::toString(), and QTime::toString().

QTime QLocale::toTime(const QString &string, QLocale::FormatType format = LongFormat) const

Reads string as a time in a locale-specific format.

Parses string and returns the time it represents. The format of the time string is chosen according to the format parameter (see timeFormat()).

Note: Any am/pm indicators used must match amText() or pmText(), ignoring case.

If the time could not be parsed, returns an invalid time.

See also timeFormat(), toDate(), toDateTime(), and QTime::fromString().

QTime QLocale::toTime(const QString &string, const QString &format) const

Reads string as a time in the given format.

Parses string and returns the time it represents. See QTime::fromString() for the interpretation of format.

Note: Any am/pm indicators used must match amText() or pmText(), ignoring case.

If the time could not be parsed, returns an invalid time.

See also timeFormat(), toDate(), toDateTime(), and QTime::fromString().

uint QLocale::toUInt(const QString &s, bool *ok = nullptr) const

Returns the unsigned int represented by the localized string s.

If the conversion fails the function returns 0.

If ok is not nullptr, failure is reported by setting *ok to false, and success by setting *ok to true.

This function ignores leading and trailing whitespace.

See also toInt() and toString().

[since 5.10] uint QLocale::toUInt(QStringView s, bool *ok = nullptr) const

Returns the unsigned int represented by the localized string s.

If the conversion fails, the function returns 0.

If ok is not nullptr, failure is reported by setting *ok to false, and success by setting *ok to true.

This function ignores leading and trailing whitespace.

This function was introduced in Qt 5.10.

See also toInt() and toString().

[since 5.13] ulong QLocale::toULong(const QString &s, bool *ok = nullptr) const

Returns the unsigned long int represented by the localized string s.

If the conversion fails the function returns 0.

If ok is not nullptr, failure is reported by setting *ok to false, and success by setting *ok to true.

This function ignores leading and trailing whitespace.

This function was introduced in Qt 5.13.

See also toLong(), toInt(), toDouble(), and toString().

[since 5.13] ulong QLocale::toULong(QStringView s, bool *ok = nullptr) const

Returns the unsigned long int represented by the localized string s.

If the conversion fails the function returns 0.

If ok is not nullptr, failure is reported by setting *ok to false, and success by setting *ok to true.

This function ignores leading and trailing whitespace.

This function was introduced in Qt 5.13.

See also toLong(), toInt(), toDouble(), and toString().

qulonglong QLocale::toULongLong(const QString &s, bool *ok = nullptr) const

Returns the unsigned long long int represented by the localized string s.

If the conversion fails the function returns 0.

If ok is not nullptr, failure is reported by setting *ok to false, and success by setting *ok to true.

This function ignores leading and trailing whitespace.

See also toLongLong(), toInt(), toDouble(), and toString().

[since 5.10] qulonglong QLocale::toULongLong(QStringView s, bool *ok = nullptr) const

Returns the unsigned long long int represented by the localized string s.

If the conversion fails, the function returns 0.

If ok is not nullptr, failure is reported by setting *ok to false, and success by setting *ok to true.

This function ignores leading and trailing whitespace.

This function was introduced in Qt 5.10.

See also toLongLong(), toInt(), toDouble(), and toString().

ushort QLocale::toUShort(const QString &s, bool *ok = nullptr) const

Returns the unsigned short int represented by the localized string s.

If the conversion fails the function returns 0.

If ok is not nullptr, failure is reported by setting *ok to false, and success by setting *ok to true.

This function ignores leading and trailing whitespace.

See also toShort() and toString().

[since 5.10] ushort QLocale::toUShort(QStringView s, bool *ok = nullptr) const

Returns the unsigned short int represented by the localized string s.

If the conversion fails, the function returns 0.

If ok is not nullptr, failure is reported by setting *ok to false, and success by setting *ok to true.

This function ignores leading and trailing whitespace.

This function was introduced in Qt 5.10.

See also toShort() and toString().

QString QLocale::toUpper(const QString &str) const

Returns an uppercase copy of str.

If Qt Core is using the ICU libraries, they will be used to perform the transformation according to the rules of the current locale. Otherwise the conversion may be done in a platform-dependent manner, with QString::toUpper() as a generic fallback.

See also QString::toUpper().

QStringList QLocale::uiLanguages() const

Returns an ordered list of locale names for translation purposes in preference order (like "en-Latn-US", "en-US", "en").

The return value represents locale names that the user expects to see the UI translation in.

Most likely you do not need to use this function directly, but just pass the QLocale object to the QTranslator::load() function.

Earlier items in the list are to be preferred over later ones.

See also QTranslator and bcp47Name().

QList<Qt::DayOfWeek> QLocale::weekdays() const

Returns a list of days that are considered weekdays according to the current locale.

QString QLocale::zeroDigit() const

Returns the zero digit character of this locale.

See also toString().

Related Non-Members

[since 5.6] size_t qHash(const QLocale &key, size_t seed = 0)

Returns the hash value for key, using seed to seed the calculation.

This function was introduced in Qt 5.6.

bool operator!=(const QLocale &lhs, const QLocale &rhs)

Returns true if the two QLocale objects, lhs and rhs, differ; otherwise returns false.

Note: The system locale is not equal to the QLocale object constructed from its language(), script() and territory(), even if the two agree in all data fields. Nor are two locales with different number options equal.

See also operator==() and setNumberOptions().

bool operator==(const QLocale &lhs, const QLocale &rhs)

Returns true if the two QLocale objects, lhs and rhs, are the same; otherwise returns false.

Note: The system locale is not equal to the QLocale object constructed from its language(), script() and territory(), even if the two agree in all data fields. Nor are two locales with different number options equal.

See also operator!=() and setNumberOptions().

Qt_Technology_Partner_RGB_475 Qt_Service_Partner_RGB_475_padded