QLocale Class
QLocale 类可在不同语言中实现数字与其字符串表示形式之间的转换。更多内容...
| 头文件: | #include <QLocale> |
| CMake: | find_package(Qt6 REQUIRED COMPONENTS Core) target_link_libraries(mytarget PRIVATE Qt6::Core) |
| qmake: | QT += core |
- 所有成员的列表,包括继承的成员
- 已弃用的成员
- QLocale 属于“字符串数据类”和“隐式共享类”的一部分。
注意:该类中的所有函数均为可重入的,但以下情况除外:
- setDefault(const QLocale &locale)
QLocale 比较
| 类别 | 可比较类型 |
|---|---|
| 相等性 | QLocale |
公共类型
| 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 } |
(since 6.7) enum class | TagSeparator { Dash, Underscore } |
| Territory |
公共函数
| QLocale() | |
(since 6.3) | QLocale(QStringViewname) |
| QLocale(QLocale::Language语言, QLocale::Territory地区) | |
| QLocale(QLocale::Language语言, QLocale::Script字符集= AnyScript, QLocale::Territory地区= AnyTerritory) | |
| QLocale(const QString&name) | |
| QLocale(const QLocale&other) | |
| ~QLocale() | |
| QString | amText() const |
| QString | bcp47Name(QLocale::TagSeparatorseparator= TagSeparator::Dash) const |
| QLocale | collation() const |
| QString | createSeparatedList(const QStringList&list) const |
| QString | currencySymbol(QLocale::CurrencySymbolFormat格式= 货币符号) const |
| QString | dateFormat(QLocale::FormatType格式= LongFormat) const |
| QString | dateTimeFormat(QLocale::FormatType格式= LongFormat) const |
| QString | dayName(intday, QLocale::FormatTypetype= LongFormat) const |
| QString | decimalPoint() const |
| QString | exponential() const |
| Qt::DayOfWeek | firstDayOfWeek() const |
| QString | formattedDataSize(qint64字节, int精度= 2, QLocale::DataSizeFormats格式= DataSizeIecFormat) const |
| QString | groupSeparator() const |
| QLocale::Language | language() const |
| QLocale::MeasurementSystem | measurementSystem() const |
| QString | monthName(intmonth, QLocale::FormatTypetype= LongFormat) const |
| QString | name(QLocale::TagSeparatorseparator= TagSeparator::Underscore) const |
| QString | nativeLanguageName() const |
(since 6.2) 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::QuotationStylestyle= StandardQuotation) const |
(since 6.0) QString | quoteString(QStringViewstr, QLocale::QuotationStylestyle= StandardQuotation) const |
| QLocale::Script | script() const |
| void | setNumberOptions(QLocale::NumberOptionsoptions) |
| QString | standaloneDayName(intday, QLocale::FormatTypetype= LongFormat) const |
| QString | standaloneMonthName(intmonth, QLocale::FormatTypetype= LongFormat) const |
| void | swap(QLocale&other) |
(since 6.2) QLocale::Territory | territory() const |
| Qt::LayoutDirection | textDirection() const |
| QString | timeFormat(QLocale::FormatTypeformat= LongFormat) const |
| QString | toCurrencyString(qlonglongvalue, const QString&symbol= QString()) const |
| QString | toCurrencyString(intvalue, const QString&symbol= QString()) const |
| QString | toCurrencyString(qulonglongvalue, const QString&symbol= QString()) const |
| QString | toCurrencyString(shortvalue, const QString&symbol= QString()) const |
| QString | toCurrencyString(uint值, const QString&符号= QString()) const |
| QString | toCurrencyString(ushortvalue, const QString&symbol= QString()) const |
| QString | toCurrencyString(doublevalue, const QString&symbol= QString(), intprecision= -1) const |
| QString | toCurrencyString(floati, const QString&symbol= QString(), intprecision= -1) const |
| QDate | toDate(const QString&string, QLocale::FormatTypeformat= LongFormat, intbaseYear= DefaultTwoDigitBaseYear) const |
| QDate | toDate(const QString&string, const QString&format, intbaseYear= DefaultTwoDigitBaseYear) const |
| QDate | toDate(const QString&string, QLocale::FormatTypeformat, QCalendarcal, intbaseYear= DefaultTwoDigitBaseYear) const |
| QDate | toDate(const QString&string, const QString&format, QCalendarcal, intbaseYear= DefaultTwoDigitBaseYear) const |
| QDateTime | toDateTime(const QString&string, QLocale::FormatTypeformat= LongFormat, intbaseYear= DefaultTwoDigitBaseYear) const |
| QDateTime | toDateTime(const QString&string, const QString&format, intbaseYear= DefaultTwoDigitBaseYear) const |
| QDateTime | toDateTime(const QString&string, QLocale::FormatTypeformat, QCalendarcal, intbaseYear= DefaultTwoDigitBaseYear) const |
| QDateTime | toDateTime(const QString&string, const QString&format, QCalendarcal, intbaseYear= DefaultTwoDigitBaseYear) const |
| double | toDouble(QStringViews, bool*ok= nullptr) const |
| double | toDouble(const QString&s, bool*ok= nullptr) const |
| float | toFloat(QStringViews, bool*ok= nullptr) const |
| float | toFloat(const QString&s, bool*ok= nullptr) const |
| int | toInt(QStringViews, bool*ok= nullptr) const |
| int | toInt(const QString&s, bool*ok= nullptr) const |
| long | toLong(QStringViews, bool*ok= nullptr) const |
| long | toLong(const QString&s, bool*ok= nullptr) const |
| qlonglong | toLongLong(QStringViews, bool*ok= nullptr) const |
| qlonglong | toLongLong(const QString&s, bool*ok= nullptr) const |
| QString | toLower(const QString&str) const |
| short | toShort(QStringViews, bool*ok= nullptr) const |
| short | toShort(const QString&s, bool*ok= nullptr) const |
| QString | toString(qlonglongi) const |
| QString | toString(QTimetime, QLocale::FormatTypeformat= LongFormat) const |
| QString | toString(QDatedate, QLocale::FormatTypeformat, QCalendarcal) const |
| QString | toString(const QDateTime&dateTime, QLocale::FormatTypeformat, QCalendarcal) const |
| QString | toString(const QDateTime&dateTime, QStringViewformat, QCalendarcal) const |
| QString | toString(inti) const |
| QString | toString(longi) const |
| QString | toString(qulonglongi) const |
| QString | toString(shorti) const |
| QString | toString(uinti) const |
| QString | toString(ulongi) const |
| QString | toString(ushorti) const |
| QString | toString(QDatedate, QLocale::FormatTypeformat= LongFormat) const |
| QString | toString(QDatedate, QStringViewformat) const |
| QString | toString(QDatedate, const QString&format) const |
| QString | toString(QTimetime, QStringViewformat) const |
| QString | toString(QTimetime, const QString&format) const |
| QString | toString(const QDateTime&dateTime, QLocale::FormatTypeformat= LongFormat) const |
| QString | toString(const QDateTime&dateTime, QStringViewformat) const |
| QString | toString(const QDateTime&dateTime, const QString&format) const |
| QString | toString(QDatedate, QStringViewformat, QCalendarcal) const |
| QString | toString(doublef, charformat= 'g', intprecision= 6) const |
| QString | toString(floatf, charformat= 'g', intprecision= 6) const |
| QString | toString(intnumber, intfieldWidth, char32_tfillChar) const |
| QString | toString(long数值, int字段宽度, char32_t填充字符) const |
| QString | toString(qlonglongnumber, intfieldWidth, char32_tfillChar) const |
| QString | toString(qulonglong数值, int字段宽度, char32_t填充字符) const |
| QString | toString(short数值, int字段宽度, char32_t填充字符) const |
| QString | toString(uint数值, int字段宽度, char32_t填充字符) const |
| QString | toString(ulongnumber, intfieldWidth, char32_tfillChar) const |
| QString | toString(ushort数字, int字段宽度, char32_t填充字符) const |
| QTime | toTime(const QString&string, QLocale::FormatTypeformat= LongFormat) const |
| QTime | toTime(const QString&string, const QString&format) const |
| uint | toUInt(QStringViews, bool*ok= nullptr) const |
| uint | toUInt(const QString&s, bool*ok= nullptr) const |
| ulong | toULong(QStringViews, bool*ok= nullptr) const |
| ulong | toULong(const QString&s, bool*ok= nullptr) const |
| qulonglong | toULongLong(QStringViews, bool*ok= nullptr) const |
| qulonglong | toULongLong(const QString&s, bool*ok= nullptr) const |
| ushort | toUShort(QStringViews, bool*ok= nullptr) const |
| ushort | toUShort(const QString&s, bool*ok= nullptr) const |
| QString | toUpper(const QString&str) const |
| QStringList | uiLanguages(QLocale::TagSeparatorseparator= TagSeparator::Dash) const |
| QList<Qt::DayOfWeek> | weekdays() const |
| QString | zeroDigit() const |
| QLocale & | operator=(const QLocale&other) |
静态公共成员
(since 6.7) const int | DefaultTwoDigitBaseYear |
| QLocale | c() |
(since 6.3) QLocale::Language | codeToLanguage(QStringView languageCode, QLocale::LanguageCodeTypes codeTypes = AnyLanguageCode) |
(since 6.1) QLocale::Script | codeToScript(QStringView scriptCode) |
(since 6.2) QLocale::Territory | codeToTerritory(QStringView territoryCode) |
(since 6.3) 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) |
(since 6.1) QString | scriptToCode(QLocale::Script script) |
| QString | scriptToString(QLocale::Script script) |
| void | setDefault(const QLocale &locale) |
| QLocale | system() |
(since 6.2) QString | territoryToCode(QLocale::Territory territory) |
(since 6.2) 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) |
详细说明
QLocale 是针对指定的语言、可选的脚本和地区构建的。它提供了各种功能,用于将数据格式化为经过适当本地化的文本,以及从本地化文本中读取数据。
示例:
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 支持“默认区域设置”的概念,该设置由应用程序启动时系统的区域设置决定。可通过调用静态成员 `setDefault()` 来更改默认区域设置。设置默认区域设置会产生以下效果:
- 如果使用默认构造函数创建 QLocale 对象,它将使用默认区域设置的配置。
- QString::arg() 在格式字符串中的位置指定符包含 'L' 时(例如 "%L1"),将使用默认区域设置来格式化数字。
以下示例演示了如何直接使用 QLocale:
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"构造 QLocale 对象的另一种方法是指定区域设置名称。
该构造函数会从给定的名称中读取语言、文字和/或地区信息,接受下划线或连字符作为分隔符(并忽略任何尾随的.codeset 或@variant 后缀)。
注意:有关 当前键盘输入区域设置的信息 ,请参阅QInputMethod::locale()。
格式的适用性
QLocale 的数据基于 Common Locale Data Repository v48.2。
这些数据由 Unicode 联盟发布,该联盟旨在遵循各语言、各文字系统以及各地区(针对其提供了数据)中写作者的惯例和通用用法。在某些情况下,这可能与公认的官方标准有所不同,具体取决于该官方标准在实践中的遵循程度。
例如,尽管相关国际标准(来自国际计量局 BIPM)规定,当数字为提高可读性而被分组时,应使用细非断行空格作为各数字组之间的分隔符,且许多司法管辖区已将此作为其数字格式的官方标准, 但许多地区实际上仍沿用传统数字格式,即使用标点符号分隔数字组。CLDR(以及据此构建的QLocale)遵循这一普遍用法,而非官方标准。
语言、文字和地区的匹配组合
QLocale 拥有源自 CLDR 的、涵盖许多语言、脚本和地区组合的数据,但并非全部。如果在构建时指定了这三个关键值(将AnyLanguage 、AnyScript 或AnyTerritory 视为未指定),且 QLocale 拥有该组合的数据,则会使用该数据。 否则,QLocale 会尽力寻找一种合理的语言、脚本和地域组合——该组合需存在相关数据且与指定内容匹配。
CLDR 提供了可能组合的表格,这些表格用于填充任何未指定的键;如果 QLocale 拥有此类可能组合的结果数据,则使用该数据。 如果未指定语言,且无法根据脚本和地区确定语言,或者 QLocale 没有该语言的数据,则使用“C”区域设置(从字符串中读取键时)或默认区域设置(其他情况)。
当 QLocale 没有指定键的数据(已用可能的键填充未指定的部分),但有结果语言的数据时,将根据忽略地区、脚本或两者(按此顺序)来寻找备选方案。 这将导致生成的 QLocale 可能与请求的不完全一致,但会根据现有数据,为指定的键提供尽可能合适的本地化处理。
另请参阅 QString::arg() 和QInputMethod::locale()。
成员类型文档
enum QLocale::Country
此枚举类型用于标识一个领土。
单个领土可以是一个国家的省份、一个国家(这是最常见的情况)或更大的地理实体,某些本地化细节与该领土相关。
| 常量 | 值 | 描述 |
|---|---|---|
QLocale::AnyCountry | AnyTerritory | 已弃用的别名,用于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 | 已弃用,请改用BosniaAndHerzegovina |
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 | 已弃用,请改用Curacao |
QLocale::Cyprus | 63 | |
QLocale::Czechia (since Qt 6.0) | 64 | |
QLocale::CzechRepublic | Czechia | 已过时,请改用Czechia |
QLocale::DemocraticRepublicOfCongo | CongoKinshasa | 已过时,请改用CongoKinshasa |
QLocale::DemocraticRepublicOfKorea | NorthKorea | 已过时,请改用NorthKorea |
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 | 已弃用,请改用LatinAmerica |
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 | 已弃用的别名,即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 | 已弃用,请改用CongoBrazzaville |
QLocale::Peru | 184 | |
QLocale::Philippines | 185 | |
QLocale::Pitcairn | 186 | |
QLocale::Poland | 187 | |
QLocale::Portugal | 188 | |
QLocale::PuertoRico | 189 | |
QLocale::Qatar | 190 | |
QLocale::RepublicOfKorea | SouthKorea | 已弃用,请改用SouthKorea |
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 | 已弃用,请改用Syria |
QLocale::Taiwan | 228 | |
QLocale::Tajikistan | 229 | |
QLocale::Tanzania | 230 | |
QLocale::Thailand | 231 | |
QLocale::TimorLeste | 232 | |
QLocale::Togo | 233 | |
QLocale::TokelauCountry | TokelauTerritory | 已弃用的别名,即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 | 已弃用的别名,即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 | 注意: 在可能的情况下,请使用 此枚举的“Territory”别名。在后续版本中,“Country”枚举将重命名为“Territory”。 |
另请参阅 territory()、territoryToString()、codeToTerritory() 以及territoryToCode()。
enum QLocale::CurrencySymbolFormat
指定货币符号的格式。
| 常量 | 值 | 描述 |
|---|---|---|
QLocale::CurrencyIsoCode | 0 | 货币的 ISO-4217 代码。 |
QLocale::CurrencySymbol | 1 | 货币符号。 |
QLocale::CurrencyDisplayName | 2 | 货币的用户可读名称。 |
enum QLocale::DataSizeFormat
flags QLocale::DataSizeFormats
指定数据量的表示格式。
| 常量 | 值 | 描述 |
|---|---|---|
QLocale::DataSizeIecFormat | 0 | 使用基数 1024 和 IEC 前缀的格式:KiB、MiB、GiB、…… |
QLocale::DataSizeTraditionalFormat | DataSizeSIQuantifiers | 使用 1024 为基数和 SI 前缀的格式:kB、MB、GB、…… |
QLocale::DataSizeSIFormat | DataSizeBase1000 | DataSizeSIQuantifiers | 使用基数 1000 和 SI 前缀的格式:kB、MB、GB、... |
DataSizeFormats 类型是QFlags<DataSizeFormat> 的 typedef。它存储 DataSizeFormat 值的按“或”运算组合。
另请参阅 formattedDataSize()。
enum QLocale::FloatingPointPrecisionOption
该枚举定义了一个常量,在将浮点数或双精度数进行转换时,可将其作为精度参数传递给QString::number()、QByteArray::number() 和QLocale::toString() 函数,以便将可变位数表示为精度。
| 常量 | 值 | 描述 |
|---|---|---|
QLocale::FloatingPointShortest | -128 | 转换算法将尝试为给定的数字找到最短的精确表示。“精确”意味着对生成的字符串表示进行逆转换后,可以得到完全相同的数字。特别是,尾随的零会被省略(在指数格式中,从尾数部分省略)。 |
另请参阅 toString(),QString::number() 以及QByteArray::number()。
enum QLocale::FormatType
此枚举描述了在将QDate 、QTime 和QDateTime 对象以及月份和日期转换为特定于区域设置的字符串时可使用的不同格式。
| 常量 | 值 | 描述 |
|---|---|---|
QLocale::LongFormat | 0 | 较长的格式。 |
QLocale::ShortFormat | 1 | 较短格式。 |
QLocale::NarrowFormat | 2 | 当空间非常有限时使用的特殊版本。 注意: |
另请参阅 dateFormat()、timeFormat()、dateTimeFormat()、monthName()、standaloneMonthName()、dayName()、standaloneDayName()、toDate()、toTime() 以及toDateTime()。
enum QLocale::Language
此枚举类型用于指定一种语言。
| 常量 | 常量值 | 描述 |
|---|---|---|
QLocale::AnyLanguage | 0 | |
QLocale::C | 1 | 简体英语区域设置;参见QLocale::c() |
QLocale::Abkhazian | 2 | |
QLocale::Afan | 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::Anii (since Qt 6.7) | 341 | |
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::Baluchi (since Qt 6.6) | 337 | |
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 | 已过时,请使用孟加拉语 |
QLocale::Bhojpuri (since Qt 5.7) | 38 | |
QLocale::Bhutani | 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 | 已废弃,请使用白俄罗斯语 |
QLocale::Cambodian | 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 | 已过时,请使用 CentralAtlasTamazight |
QLocale::Chakma (since Qt 5.1) | 52 | |
QLocale::Chamorro | 53 | |
QLocale::Chechen | 54 | |
QLocale::Cherokee | 55 | |
QLocale::Chewa | Nyanja | 已弃用,请使用尼亚尼亚语 |
QLocale::Chickasaw (since Qt 5.14) | 56 | |
QLocale::Chiga | 57 | |
QLocale::Chinese | 58 | (普通话) |
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 | 与西弗里斯兰语相同 |
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 | 已过时,请使用格陵兰语 |
QLocale::Guarani | 97 | |
QLocale::Gujarati | 98 | |
QLocale::Gusii | 99 | |
QLocale::Haitian | 100 | |
QLocale::Haryanvi (since Qt 6.5) | 330 | |
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 | 已过时,请使用因纽皮亚克语 |
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::Kangri (since Qt 6.7) | 342 | |
QLocale::Kannada | 130 | |
QLocale::Kanuri | 131 | |
QLocale::KaraKalpak (since Qt 6.9) | 345 | |
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 | 已废弃,请使用“吉尔吉斯” |
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 | 已过时,请使用 Rundi |
QLocale::Kuvi (since Qt 6.8) | 344 | |
QLocale::Kwanyama | Kuanyama | 已弃用,请使用 Kuanyama |
QLocale::Kwasio | 149 | |
QLocale::Kyrgyz (since Qt 6.0) | 150 | |
QLocale::Ladin (since Qt 6.11) | 347 | |
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::Ligurian (since Qt 6.6) | 338 | |
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::Moksha (since Qt 6.5) | 333 | |
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 | 已过时,请使用纳瓦霍语 |
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::NorthernFrisian (since Qt 6.5) | 331 | |
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::Obolo (since Qt 6.5) | 336 | |
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 | 已过时,请使用奥里亚语 |
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::Pijin (since Qt 6.5) | 335 | |
QLocale::Polish | 230 | |
QLocale::Portuguese | 231 | |
QLocale::Prussian (since Qt 5.5) | 232 | |
QLocale::Punjabi | 233 | |
QLocale::Quechua | 234 | |
QLocale::Rajasthani (since Qt 6.5) | 332 | |
QLocale::RhaetoRomance | Romansh | 已过时,请使用罗曼什语 |
QLocale::Rohingya (since Qt 6.6) | 339 | |
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::Shan (since Qt 6.11) | 348 | |
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::SwampyCree (since Qt 6.9) | 346 | |
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::TokiPona (since Qt 6.5) | 334 | |
QLocale::TokPisin (since Qt 5.7) | 294 | |
QLocale::Tongan | 295 | |
QLocale::Torwali (since Qt 6.6) | 340 | |
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 | 已废止,请使用“维吾尔语” |
QLocale::Uigur | 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::Venetian (since Qt 6.7) | 343 | |
QLocale::Vietnamese | 310 | |
QLocale::Volapuk | 311 | |
QLocale::Vunjo | 312 | |
QLocale::Walamo | Wolaytta | 已过时,请使用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 | 与弗里斯兰语相同 |
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 |
另请参阅 language() 和languageToString()。
enum QLocale::LanguageCodeType
flags QLocale::LanguageCodeTypes
此枚举定义了语言代码类型,可用于限制codeToLanguage 和languageToCode 所考虑的语言代码集。
| 常量 | 常量值 | 描述 |
|---|---|---|
QLocale::ISO639Part1 | 1 << 0 | ISO 639 第 1 部分 Alpha 2 代码。 |
QLocale::ISO639Part2B | 1 << 1 | ISO 639 第 2 部分书目 Alpha 3 代码。 |
QLocale::ISO639Part2T | 1 << 2 | ISO 639 第 2 部分术语 Alpha 3 代码。 |
QLocale::ISO639Part3 | 1 << 3 | ISO 639 第 3 部分 Alpha 3 代码。 |
QLocale::LegacyLanguageCode | 1 << 15 | 不属于上述集合,但过去曾由 Qt 支持的代码。该值仅可由 `codeToLanguage()` 使用。当传递给 `languageToCode()` 时,该值将被忽略。 |
QLocale::ISO639Part2 | ISO639Part2B | ISO639Part2T | 任何 ISO 639 第 2 部分代码。 |
QLocale::ISO639Alpha2 | ISO639Part1 | 任何 ISO-639 2 字母代码。 |
QLocale::ISO639Alpha3 | ISO639Part2 | ISO639Part3 | 任何 ISO-639 三字母代码。 |
QLocale::ISO639 | ISO639Alpha2 | ISO639Alpha3 | 任何 ISO 639 代码。 |
QLocale::AnyLanguageCode | -1 | 指定可以使用任何代码。 |
LanguageCodeTypes 类型是QFlags<LanguageCodeType> 的 typedef 定义。它存储了 LanguageCodeType 值的“或”组合。
enum QLocale::MeasurementSystem
此枚举定义了用于测量的单位。
| 常量 | 值 | 描述 |
|---|---|---|
QLocale::MetricSystem | 0 | 该值表示基于国际单位制 (SI) 的公制单位,例如米、厘米和毫米。 |
QLocale::ImperialUSSystem | 1 | 此值表示英制单位,例如美国使用的英寸和英里。 |
QLocale::ImperialUKSystem | 2 | 此值表示帝国单位,例如英国使用的英寸和英里。 |
QLocale::ImperialSystem | ImperialUSSystem | 为兼容性而提供。与 ImperialUSSystem 相同 |
enum QLocale::NumberOption
flags QLocale::NumberOptions
该枚举定义了一组用于数字转字符串和字符串转数字的选项。可通过numberOptions()获取这些选项,并通过setNumberOptions()进行设置。
| 常量 | 值 | 描述 |
|---|---|---|
QLocale::DefaultNumberOptions | 0x0 | 此选项代表除 C 区域设置以外所有区域设置的默认行为:使用分组分隔符,单个数字的指数部分前加一个零,且小数部分末尾不保留尾零(如有)。 |
QLocale::OmitGroupSeparator | 0x01 | 如果设置了此选项,数字转字符串函数将不会将数字拆分为组。C 区域设置默认启用此选项。所有其他区域设置的默认行为是,在数字的整数部分使用分组符将数字拆分为组。 |
QLocale::RejectGroupSeparator | 0x02 | 如果设置了此选项,字符串转数字函数在输入中遇到分组符时将失败。默认情况下,这些函数接受包含正确位置分组符的数字。 |
QLocale::OmitLeadingZeroInExponent | 0x04 | 如果启用此选项,在以科学记数法打印浮点数时,数字转字符串函数不会在指数前补零。默认行为是在单位指数前添加一个前导零。 |
QLocale::RejectLeadingZeroInExponent | 0x08 | 如果启用此选项,字符串转数字函数在解析科学记数法中的浮点数时,若遇到用零填充的指数,将返回失败。默认情况下接受此类填充。 |
QLocale::IncludeTrailingZeroesAfterDot | 0x10 | 如果启用此选项,在“g”模式或“最简洁”模式下,数字转字符串函数会用零对数字进行补零,以达到要求的精度。默认情况下会省略尾部零,这可能会导致小数部分的位数少于要求的精度。 |
QLocale::RejectTrailingZeroesAfterDot | 0x20 | 如果设置了此选项,在解析科学记数法或十进制表示形式的数字时,若小数部分末尾出现尾随零,字符串转数字函数将返回失败。默认情况下接受尾随零。 |
NumberOptions 类型是QFlags<NumberOption> 的 typedef。它存储 NumberOption 值的按“或”运算组合。
另请参阅 setNumberOptions()、numberOptions() 以及FloatingPointPrecisionOption 。
enum QLocale::QuotationStyle
此枚举定义了一组适用于特定区域设置的引号样式。
| 常量 | 值 | 描述 |
|---|---|---|
QLocale::StandardQuotation | 0 | 如果设置了此选项,将使用标准引号来引号字符串。 |
QLocale::AlternateQuotation | 1 | 如果设置此选项,将使用替代引号来引号字符串。 |
另请参阅 ` quoteString()`。
enum QLocale::Script
此枚举类型用于指定脚本。
| 常量 | 值 | 描述 |
|---|---|---|
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 | 已过时,请使用 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::HanifiScript (since Qt 6.6) | 142 | |
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 | 已过时,请使用 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 | 已过时,请使用 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 | 与简体汉字相同 |
QLocale::SimplifiedHanScript | 118 | 与简体汉字相同 |
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 | 与繁体汉字相同 |
QLocale::TraditionalHanScript | 137 | 与传统中文字体相同 |
QLocale::UgariticScript (since Qt 5.1) | 138 | |
QLocale::VaiScript | 139 | |
QLocale::VarangKshitiScript (since Qt 5.5) | 140 | |
QLocale::YiScript | 141 |
另请参阅 script()、scriptToString(),以及languageToString()。
[since 6.7] enum class QLocale::TagSeparator
说明如何组合构成区域设置标识符的各个部分。
区域设置标识符可能由多个标签组成,这些标签分别表示语言、文字和地区(以及可能的其他详细信息),它们组合在一起形成该标识符。 各种标准和惯用形式使用连字符(Unicode中的HYPHEN-MINUS,U+002D)或下划线(LOW LINE,U+005F)。因此,QLocale 的不同客户端可能需要使用其中一种或另一种。
| 常量 | 值 | 描述 |
|---|---|---|
QLocale::TagSeparator::Dash | '-' | 使用'-' ,即连字符或短横线字符。 |
QLocale::TagSeparator::Underscore | '_' | 使用'_' ,即下划线字符。注意:尽管 (截至 2023 年)公共标准中仅使用破折号和下划线作为分隔符,但如果需要非标准的 ASCII 分隔符,可以将任何ASCII字符转换为此类型。 不支持将非 ASCII 字符(十进制值大于 127)强制转换为该类型:如果未来某些公开标准使用非 ASCII 分隔符,这些值将保留作枚举成员使用。 当然,可以使用QString::replace() 将接受此类型参数的函数所使用的分隔符替换为任意的 Unicode 字符或字符串。 |
该枚举在 Qt 6.7 中引入。
[alias] QLocale::Territory
此枚举类型是Country 的别名,该枚举类型将在未来的版本中重命名为Territory。
另请参阅 territory() 和territoryToString()。
成员函数文档
QLocale::QLocale()
构建一个使用默认区域设置初始化的 QLocale 对象。
如果未通过setDefault() 设置默认区域设置,则该区域设置将与system() 返回的区域设置相同。
另请参阅 setDefault() 和system()。
[explicit, since 6.3] QLocale::QLocale(QStringView name)
根据指定的name 创建一个QLocale对象。
名称的格式为“language[_script][_territory][.codeset][@modifier]”或“C”,其中:
- language 是小写、由两个字母组成的 ISO 639 语言代码(某些由三个字母组成的代码也被识别),
- script 是全大写、四字母的 ISO 15924 文字代码,
- territory 是大写、由两个字母组成的 ISO 3166 地区代码(某些数字代码也被识别),
- codeset 和 modifier 将被忽略。
分隔符可以是下划线'_' (U+005F,“下划线”)或连字符'-' (U+002D,“连字符-减号”)。 如果 QLocale 没有指定语言、脚本和地区的组合数据,则会使用它能找到的最合适的匹配项。如果字符串违反了区域设置格式,或者无法为指定的键找到合适的数据,则改用“C”区域设置。
此构造函数的速度远低于 QLocale(Language, Script, Territory) 或 QLocale(Language, Territory)。
该函数在 Qt 6.3 中引入。
另请参阅 bcp47Name() 和Matching combinations of language, script and territory 。
QLocale::QLocale(QLocale::Language language, QLocale::Territory territory)
根据指定的language 和territory 构建一个QLocale对象。
如果该组合中使用了多个脚本,则会选择一个可能的脚本。如果 QLocale 没有指定language 的数据,则使用默认区域设置。如果 QLocale 没有指定language 和territory 的组合数据,则可能会使用其他地区代替。
另请参阅 setDefault() 和Matching combinations of language, script and territory 。
QLocale::QLocale(QLocale::Language language, QLocale::Script script = AnyScript, QLocale::Territory territory = AnyTerritory)
根据指定的language 、script 和territory 构建一个QLocale对象。
如果 QLocale 没有给定组合的数据,它将尽可能寻找最匹配的数据。如果
- language
AnyLanguage,且无法从 推断出语言,同时script territory - 且 QLocale 既没有通过language 给定的语言数据,也没有通过上述方式推断出的语言数据。
另请参阅 setDefault() 和Matching combinations of language, script and territory 。
[explicit] QLocale::QLocale(const QString &name)
这是一个重载函数。
[noexcept] QLocale::QLocale(const QLocale &other)
创建一个 QLocale 对象,作为other 的副本。
[noexcept] QLocale::~QLocale()
析构函数
QString QLocale::amText() const
返回采用12小时制约定指定时间时,“AM”后缀的本地化名称。
另请参阅 pmText()。
QString QLocale::bcp47Name(QLocale::TagSeparator separator = TagSeparator::Dash) const
返回用连字符连接的 BCP47 字段名称。
该字符串会将该语言环境所需的“语言”、“文字”和“地区”(以及可能的其他 BCP47 字段)进行组合,以唯一地指定该语言环境。请注意,如果根据 Unicode 联盟的Likely Subtag Rules 规范,在给定保留的字段时,省略的字段会被隐含,则可以省略某些字段。 如果需要其他格式,请参阅name() 以了解如何从各个字段构建字符串。
与uiLanguages() 不同,bcp47Name() 返回的值代表QLocale 数据的区域设置名称;这未必是用户界面应采用的语言。
该函数试图使区域设置名称符合由 RFC 5646 定义的 IETF 最佳通用实践 47(BCP 47)。自 Qt 6.7 起,它支持一个可选的separator 参数,可用于覆盖 BCP 47 规定的使用连字符分隔标签的规则。 但在IETF定义的协议中使用时,应保留默认设置QLocale::TagSeparator::Dash 。
另请参阅 name()、language()、territory()、script() 以及uiLanguages()。
[static noexcept] QLocale QLocale::c()
返回一个初始化为“C”语言环境的QLocale 对象。
该区域设置基于 en_US,但具有一些独特的特性,例如简化的数字格式和特有的日期格式。它实现了描述“C”编程语言标准库函数行为的 POSIX 标准。
这意味着,其排序规则基于字母的 ASCII 值,因此(在区分大小写的排序中)所有大写字母都会排在小写字母之前(而不是每个字母的大写和小写形式紧邻排列,然后才是下一个字母的两种形式)。
另请参阅 system()。
[static noexcept, since 6.3] QLocale::Language QLocale::codeToLanguage(QStringView languageCode, QLocale::LanguageCodeTypes codeTypes = AnyLanguageCode)
返回与符合 ISO 639 标准定义的两个或三个字母的languageCode 相对应的QLocale::Language 枚举值。
如果指定了codeTypes ,则该枚举将用于选择转换时要考虑的代码集。默认情况下,Qt XML所知的所有代码都会被考虑。代码按以下顺序进行匹配:ISO639Part1 、ISO639Part2B 、ISO639Part2T 、ISO639Part3 、LegacyLanguageCode 。
如果代码无效或未知,则返回QLocale::AnyLanguage 。
该函数自 Qt 6.3 起引入。
另请参阅 languageToCode()、codeToTerritory() 和codeToScript()。
[static noexcept, since 6.1] QLocale::Script QLocale::codeToScript(QStringView scriptCode)
返回与四字母脚本scriptCode 对应的 `QLocale::Script ` 枚举值,该定义见 ISO 15924 标准。
如果代码无效或未知,则返回QLocale::AnyScript 。
该函数在 Qt 6.1 中引入。
另请参阅 scriptToCode()、codeToLanguage() 和codeToTerritory()。
[static noexcept, since 6.2] QLocale::Territory QLocale::codeToTerritory(QStringView territoryCode)
返回与两字母或三位数字的territoryCode (如ISO 3166标准所定义)相对应的QLocale::Territory 枚举值。
如果代码无效或未知,则返回QLocale::AnyTerritory 。
该函数在 Qt 6.2 中引入。
另请参阅 territoryToCode()、codeToLanguage() 和codeToScript()。
QLocale QLocale::collation() const
返回用于排序的区域设置。
结果通常是该区域设置;但是,系统区域设置(通常是默认区域设置)将返回系统排序规则区域设置。该结果适合传递给QCollator 的构造函数。
另请参阅 QCollator 。
QString QLocale::createSeparatedList(const QStringList &list) const
返回一个字符串,该字符串表示将给定的字符串list 与由区域设置定义的分隔符进行连接后的结果。
QString QLocale::currencySymbol(QLocale::CurrencySymbolFormat format = CurrencySymbol) const
根据《货币符号标准》(format )返回相应的货币符号。
QString QLocale::dateFormat(QLocale::FormatType format = LongFormat) const
返回当前区域设置所使用的日期格式。
如果 `format ` 的值为 `LongFormat`,则格式为详细格式;否则为简短格式。例如,对于区域设置 `en_US `,`LongFormat ` 的结果为 `dddd, MMMM d, yyyy`,而 `ShortFormat ` 的结果为 `M/d/yy`。
另请参阅 QDate::toString() 和QDate::fromString()。
QString QLocale::dateTimeFormat(QLocale::FormatType format = LongFormat) const
返回当前区域设置所使用的日期时间格式。
如果 `format ` 为 `LongFormat`,则格式为详细格式;否则为简短格式。例如,对于 `en_US ` 区域设置,`LongFormat ` 的结果为 `dddd, MMMM d, yyyy h:mm:ss AP t`,`ShortFormat ` 的结果为 `M/d/yy h:mm AP`。
另请参阅 QDateTime::toString() 和QDateTime::fromString()。
QString QLocale::dayName(int day, QLocale::FormatType type = LongFormat) const
返回day 的本地化名称(其中1代表星期一,2代表星期二,依此类推),格式由type 指定。
例如,如果语言环境为“星期一”(en_US ),且day 的值为1,则LongFormat 将返回Monday ,ShortFormat 将返回Mon ,NarrowFormat 将返回M 。
另请参阅 monthName() 和standaloneDayName()。
QString QLocale::decimalPoint() const
返回此区域设置的小数部分分隔符。
这是在包含小数部分的数字表示中,用于将整数部分与小数部分分隔开的标记。它通常被称为“小数点字符”——尽管在许多区域设置中,它并不是一个“点”(或类似的圆点)。 (自 Qt 6.0 起)该值以字符串形式返回,以防某些区域设置需要多个 UTF-16 码点来表示其分隔符。
另请参阅 groupSeparator() 和toString()。
QString QLocale::exponential() const
返回此区域设置的指数分隔符。
这是一个用于在某些浮点数表示法中将尾数与指数分隔开的标记。自 Qt 6.0 起,该值以字符串形式返回,因为在某些区域设置中,它并非单个字符——例如,它可能由乘号和“10 的幂”运算符的表示形式组成。
另请参阅 toString(double, char, int)。
Qt::DayOfWeek QLocale::firstDayOfWeek() const
根据当前区域设置返回一周中的第一天。
QString QLocale::formattedDataSize(qint64 bytes, int precision = 2, QLocale::DataSizeFormats format = DataSizeIecFormat) const
将以字节为单位的数值转换为易于理解的本地化字符串,该字符串由一个数字和一个带量词组成。量词的选择应确保该数字不小于1,且尽可能小。 例如,若bytes 为16384,precision 为2,且format 为DataSizeIecFormat (默认值),则该函数返回“16.00 KiB”;对于1330409069609字节,它返回“1.21 GiB”;以此类推。 如果format 设置为DataSizeIecFormat 或DataSizeTraditionalFormat ,则给定的字节数将除以 1024 的幂,且结果小于 1024;对于DataSizeSIFormat ,则除以 1000 的幂,且结果小于 1000。DataSizeIecFormat 使用新的IEC标准量词Ki、Mi等,而DataSizeSIFormat 则使用较旧的SI量词k、M等,DataSizeTraditionalFormat 则滥用了这些量词。
QString QLocale::groupSeparator() const
返回此区域设置的数字分组分隔符。
这是一个用于将数字表示中的长数字序列拆分为若干组以方便阅读的标记。在某些区域设置中,该标记可能为空,表示不应以这种方式将数字拆分为组。 在其他区域设置中,它可能是空格字符。自 Qt 6.0 起,该参数以字符串形式返回,以应对某些区域设置需要多个 UTF-16 码点来表示其分隔符的情况。
另请参阅 decimalPoint() 和toString()。
QLocale::Language QLocale::language() const
返回此区域设置的语言。
另请参阅 script()、territory()、languageToString() 以及bcp47Name()。
[static, since 6.3] QString QLocale::languageToCode(QLocale::Language language, QLocale::LanguageCodeTypes codeTypes = AnyLanguageCode)
返回language 的两个或三个字母的语言代码,该代码符合ISO 639标准。
如果指定了codeTypes ,则该参数将决定采用哪一组代码。函数将返回该组中为language 定义的首个代码。否则,将考虑所有ISO-639代码。代码的处理顺序如下:ISO639Part1 、ISO639Part2B 、ISO639Part2T 、ISO639Part3 。本函数将忽略LegacyLanguageCode 。
注意:对于 QLocale::C ,该函数返回"C" 。对于QLocale::AnyLanguage ,返回空字符串。如果该语言在任何选定的代码集中的代码均不存在,则返回空字符串。
该函数在 Qt 6.3 中引入。
另请参阅 codeToLanguage()、language()、name()、bcp47Name()、territoryToCode() 以及scriptToCode()。
[static] QString QLocale::languageToString(QLocale::Language language)
返回一个QString ,其中包含language 的名称。
另请参阅 territoryToString()、scriptToString() 和bcp47Name()。
[static] QList<QLocale> QLocale::matchingLocales(QLocale::Language language, QLocale::Script script, QLocale::Territory territory)
返回一个包含符合给定language 、script 和territory 的有效区域设置对象的列表。
获取所有区域设置的列表:QList<QLocale> allLocales = QLocale::matchingLocales(QLocale::AnyLanguage,QLocale::AnyScript,QLocale::AnyTerritory);
获取适用于俄罗斯的语言环境列表:QList<QLocale> locales = QLocale::matchingLocales(QLocale::AnyLanguage,QLocale::AnyScript,QLocale::Russia);
QLocale::MeasurementSystem QLocale::measurementSystem() const
返回该区域设置的度量单位系统。
QString QLocale::monthName(int month, QLocale::FormatType type = LongFormat) const
返回month 的本地化名称,格式由type 指定。
例如,如果区域设置为en_US ,且month 为 1,则LongFormat 将返回January 。ShortFormat 将返回Jan ,而NarrowFormat 将返回J 。
另请参阅 dayName() 和standaloneMonthName()。
QString QLocale::name(QLocale::TagSeparator separator = TagSeparator::Underscore) const
此区域设置的短名称。
返回该区域设置的语言和地区,格式为“language_territory”的字符串,其中 language 是小写、由两个字母组成的 ISO 639 语言代码,territory 是大写、由两个或三个字母组成的 ISO 3166 地区代码。 如果该区域设置未指定领土,则仅返回语言名称。从 Qt 6.7 开始,可以提供可选的separator 参数来覆盖默认用于分隔这两个标签的下划线字符。
即使QLocale 对象是在显式指定脚本的情况下构造的,出于兼容性考虑,name() 也不会包含该脚本。若需要完整的区域设置名称,请改用bcp47Name();或者通过将language()返回的结果传递给languageToCode()(对于脚本和地区,操作方式类似)来构建用于标识区域设置的字符串。
另请参阅 QLocale()、language()、script()、territory()、bcp47Name() 以及uiLanguages() 函数。
QString QLocale::nativeLanguageName() const
返回该区域设置所属语言的本地名称。例如,对于瑞士德语区域设置,返回“Schweizer Hochdeutsch”。
另请参阅 nativeTerritoryName() 和languageToString()。
[since 6.2] QString QLocale::nativeTerritoryName() const
返回该区域设置对应的地区本地名称。例如,对于西班牙语/西班牙区域设置,返回“España”。
该函数于 Qt 6.2 中引入。
另请参见 nativeLanguageName() 和territoryToString()。
QString QLocale::negativeSign() const
返回该区域设置的负号指示符。
这是一个被假定为用作数字前缀以表示该数字为负数的标记。自 Qt 6.0 起,该值以字符串形式返回,因为在某些区域设置中,它并非单个字符——例如,因为它包含文本方向控制字符。
另请参阅 positiveSign() 和toString()。
QLocale::NumberOptions QLocale::numberOptions() const
返回与该QLocale 实例相关的数字转换选项。
默认情况下,标准区域设置未设置任何选项,但“C”区域设置除外,其默认已设置为OmitGroupSeparator 。
另请参阅 setNumberOptions()、toString()、groupSeparator() 以及FloatingPointPrecisionOption 。
QString QLocale::percent() const
返回该区域设置的百分比标记。
这是一个被假定为附加在数字后以表示百分比的标记。自 Qt 6.0 起,它以字符串形式返回,因为在某些区域设置中,它并非单个字符——例如,因为它包含文本方向控制字符。
另请参阅 toString()。
QString QLocale::pmText() const
返回采用12小时制表示的时间所对应的“PM”后缀的本地化名称。
另请参阅 amText()。
QString QLocale::positiveSign() const
返回此区域设置的正号指示符。
这是一个被假定为用作数字前缀以表示该数字为正数的标记。自 Qt 6.0 起,该标记以字符串形式返回,因为在某些区域设置中,它并非单个字符——例如,因为它包含文本方向控制字符。
另请参阅 negativeSign() 和toString()。
QString QLocale::quoteString(const QString &str, QLocale::QuotationStyle style = StandardQuotation) const
返回根据当前区域设置,使用给定的引号格式style 对str 进行引号处理后的结果。
[since 6.0] QString QLocale::quoteString(QStringView str, QLocale::QuotationStyle style = StandardQuotation) const
这是一个重载函数。
该函数在 Qt 6.0 中引入。
QLocale::Script QLocale::script() const
返回此语言环境的脚本。
另请参阅 language()、territory()、languageToString()、scriptToString() 以及bcp47Name()。
[static, since 6.1] QString QLocale::scriptToCode(QLocale::Script script)
返回script 的四字母脚本代码,该代码定义于ISO 15924标准中。
注意:对于 QLocale::AnyScript ,将返回一个空字符串。
该函数于 Qt 6.1 中引入。
另请参阅 script()、name()、bcp47Name()、languageToCode() 以及territoryToCode()。
[static] QString QLocale::scriptToString(QLocale::Script script)
返回一个QString ,其中包含script 的名称。
另请参阅 languageToString()、territoryToString()、script() 以及bcp47Name()。
[static] void QLocale::setDefault(const QLocale &locale)
将全局默认区域设置为locale 。
当不带任何参数构造QLocale 对象时,将使用此区域设置。如果未调用此函数,则使用系统的区域设置。
警告:在 多线程应用程序中 ,应在应用程序启动时、在创建任何非GUI线程之前设置默认区域设置。
警告:此函数不可重入。
void QLocale::setNumberOptions(QLocale::NumberOptions options)
设置与该QLocale 实例的数字转换相关的options 。
另请参阅 numberOptions() 和FloatingPointPrecisionOption 。
QString QLocale::standaloneDayName(int day, QLocale::FormatType type = LongFormat) const
返回day 的本地化名称(其中1代表星期一,2代表星期二,依此类推),该名称将作为独立文本使用,格式由type 指定。
如果区域设置信息未指定独立的星期名称,则返回值与dayName() 中的返回值相同。
另请参阅 dayName() 和standaloneMonthName()。
QString QLocale::standaloneMonthName(int month, QLocale::FormatType type = LongFormat) const
返回month 的本地化名称,该名称用作独立文本,格式由type 指定。
如果区域设置信息未指定独立的月份名称,则返回值与monthName() 中的返回值相同。
另请参见 monthName() 和standaloneDayName()。
[noexcept] void QLocale::swap(QLocale &other)
将当前区域设置与other 互换。此操作非常快速,且绝不会失败。
[static] QLocale QLocale::system()
返回一个初始化为系统区域设置的QLocale 对象。
系统区域设置可能会使用系统特有的区域设置数据源(如有可用);否则,将回退到QLocale 中针对系统报告的语言、字符集和地区所提供的内置数据库条目。
例如,在 Windows 和 Mac 上,该区域设置将使用系统配置面板中指定的十进制/分组分隔符以及日期/时间格式。
另请参阅 c()。
[since 6.2] QLocale::Territory QLocale::territory() const
返回该区域设置的地域。
该函数在 Qt 6.2 中引入。
另请参阅 language()、script()、territoryToString() 以及bcp47Name()。
[static, since 6.2] QString QLocale::territoryToCode(QLocale::Territory territory)
返回territory 的两位字母地区代码,该代码符合 ISO 3166 标准。
注意:对于 QLocale::AnyTerritory ,将返回一个空字符串。
该函数自 Qt 6.2 起引入。
另请参阅 codeToTerritory()、territory()、name()、bcp47Name()、languageToCode() 以及scriptToCode()。
[static, since 6.2] QString QLocale::territoryToString(QLocale::Territory territory)
返回一个QString ,其中包含territory 的名称。
该函数在 Qt 6.2 中引入。
另请参阅 languageToString()、scriptToString()、territory() 以及bcp47Name()。
Qt::LayoutDirection QLocale::textDirection() const
返回该语言的文本方向。
QString QLocale::timeFormat(QLocale::FormatType format = LongFormat) const
返回当前区域设置所使用的时间格式。
如果 `format ` 为 `LongFormat`,则格式为详细格式;否则为简短格式。例如,对于 `en_US ` 区域设置,`LongFormat ` 的结果为 `h:mm:ss AP t`,`ShortFormat ` 的结果为 `h:mm AP`。
另请参阅 QTime::toString() 和QTime::fromString()。
QString QLocale::toCurrencyString(qlonglong value, const QString &symbol = QString()) const
返回value 作为货币的本地化字符串表示形式。如果提供了symbol ,则使用该符号代替默认的货币符号。
另请参阅 currencySymbol()。
QString QLocale::toCurrencyString(int value, const QString &symbol = QString()) const
这是一个重载函数。
QString QLocale::toCurrencyString(qulonglong value, const QString &symbol = QString()) const
这是一个重载函数。
QString QLocale::toCurrencyString(short value, const QString &symbol = QString()) const
这是一个重载函数。
QString QLocale::toCurrencyString(uint value, const QString &symbol = QString()) const
这是一个重载函数。
QString QLocale::toCurrencyString(ushort value, const QString &symbol = QString()) const
这是一个重载函数。
QString QLocale::toCurrencyString(double value, const QString &symbol = QString(), int precision = -1) const
返回value 作为货币的本地化字符串表示形式。如果提供了symbol ,则使用该符号代替默认的货币符号。如果提供了precision ,则使用该参数来设置货币值的小数位数。
此函数重载了QLocale::toCurrencyString()。
另请参阅 currencySymbol()。
QString QLocale::toCurrencyString(float i, const QString &symbol = QString(), int precision = -1) const
该函数重载了QLocale::toCurrencyString()。
QDate QLocale::toDate(const QString &string, QLocale::FormatType format = LongFormat, int baseYear = DefaultTwoDigitBaseYear) const
将string 解析为符合特定区域设置的format 格式的日期。
解析string 并返回其所表示的日期。日期字符串的格式根据format 参数确定(参见dateFormat())。
某些区域设置(特别是针对ShortFormat )仅使用年份的最后两位数字。在这种情况下,将首先考虑以baseYear 为起点的100个年份。 在 6.7 版本之前,不存在baseYear 参数,系统始终使用 1900 年。这是baseYear 的默认行为,即从该年到 1999 年之间选择一年。在某些情况下,其他字段可能会导致选择下一个或上一个世纪,以确保结果与所有给定字段保持一致。详情请参阅QDate::fromString()。
注意: 若使用月份 和日期名称,必须使用该区域设置的语言。
如果无法解析日期,则返回一个无效日期。
另请参阅 dateFormat()、toTime()、toDateTime() 以及QDate::fromString()。
QDate QLocale::toDate(const QString &string, const QString &format, int baseYear = DefaultTwoDigitBaseYear) const
将string 解析为给定格式format 中的日期。
解析string 并返回其所代表的日期。关于format 的解释,请参阅QDate::fromString()。
当format 仅指定年份的后两位数字时,将首先考虑从baseYear 开始的 100 个年份作为候选值。 在 6.7 版本之前,不存在baseYear 参数,系统始终使用 1900 年。这是baseYear 的默认行为,即从该年到 1999 年之间选择一年。在某些情况下,其他字段可能会导致选择下一个或上一个世纪,以确保结果与所有给定字段保持一致。详情请参阅QDate::fromString()。
注意: 若使用月份 和日期名称,必须使用该区域设置的语言。
如果无法解析该日期,则返回一个无效日期。
另请参阅 dateFormat()、toTime()、toDateTime() 以及QDate::fromString()。
QDate QLocale::toDate(const QString &string, QLocale::FormatType format, QCalendar cal, int baseYear = DefaultTwoDigitBaseYear) const
这是一个重载函数。
QDate QLocale::toDate(const QString &string, const QString &format, QCalendar cal, int baseYear = DefaultTwoDigitBaseYear) const
这是一个重载函数。
QDateTime QLocale::toDateTime(const QString &string, QLocale::FormatType format = LongFormat, int baseYear = DefaultTwoDigitBaseYear) const
将string 解析为符合特定区域设置的format 中的日期时间。
解析string 并返回其所表示的日期时间。日期字符串的格式根据format 参数确定(参见dateFormat())。
某些区域设置(特别是针对ShortFormat )仅使用年份的最后两位数字。在这种情况下,将首先考虑以baseYear 为起点的100年范围内的日期。 在 6.7 版本之前,不存在baseYear 参数,系统始终使用 1900 年。这是baseYear 的默认行为,即从该年选定一年直至 1999 年。在某些情况下,其他字段可能会导致选择下一个或上一个世纪,以确保结果与所有给定字段保持一致。详情请参阅QDate::fromString()。
如果无法解析该字符串,则返回一个无效的QDateTime 。
另请参阅 dateTimeFormat()、toTime()、toDate() 以及QDateTime::fromString()。
QDateTime QLocale::toDateTime(const QString &string, const QString &format, int baseYear = DefaultTwoDigitBaseYear) const
将string 解析为给定时区format 中的日期时间。
解析string 并返回其所表示的日期和时间。有关format 的解释,请参阅QDateTime::fromString()。
当format 仅指定年份的后两位数字时,将首先考虑从baseYear 开始的 100 个年份作为候选值。 在 6.7 版本之前,不存在baseYear 参数,系统始终使用 1900 年。这是baseYear 的默认值,用于从该年到 1999 年之间选择年份。在某些情况下,其他字段可能会导致选择下一个或上一个世纪,以确保结果与所有给定的字段保持一致。详情请参阅QDate::fromString()。
如果无法解析该字符串,则返回一个无效的QDateTime 。 如果字符串可以被解析,但表示一个无效的日期时间(例如处于时区转换时被跳过的间隙中),则返回的QDateTime 表示一个相邻的有效日期时间(通常与之相差有效日期时间中的间隙宽度,例如时区转换时被跳过的小时)。将该值传递给 fromMSecsSinceEpoch() 函数将生成一个有效的日期时间,该日期时间无法被解析出的字符串准确表示。
另请参阅 dateTimeFormat()、toTime()、toDate() 以及QDateTime::fromString()。
QDateTime QLocale::toDateTime(const QString &string, QLocale::FormatType format, QCalendar cal, int baseYear = DefaultTwoDigitBaseYear) const
这是一个重载函数。
QDateTime QLocale::toDateTime(const QString &string, const QString &format, QCalendar cal, int baseYear = DefaultTwoDigitBaseYear) const
这是一个重载函数。
double QLocale::toDouble(QStringView s, bool *ok = nullptr) const
返回由本地化字符串s 所表示的double类型值。
如果转换发生溢出,则返回无穷大;如果因其他原因(例如下溢)导致转换失败,则返回 0.0。
如果ok 不是nullptr ,则通过将 *ok 设置为false 来报告失败,通过将 *ok 设置为true 来报告成功。
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请注意,最后一次转换的结果为 1234.0,因为在德语区域设置中,'.' 是千位分隔符。
该函数会忽略首尾的空白字符。
另请参阅 toFloat()、toInt() 和toString()。
double QLocale::toDouble(const QString &s, bool *ok = nullptr) const
返回由本地化字符串“s ”所表示的 double 类型值。
如果转换发生溢出,则返回无穷大;如果因其他原因(例如下溢)导致转换失败,则返回 0.0。
如果ok 不是nullptr ,则通过将 *ok 设置为false 来报告失败,通过将 *ok 设置为true 来报告成功。
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请注意,最后一次转换返回 1234.0,因为在德语区域设置中,'.' 是千位分隔符。
该函数会忽略首尾的空格。
另请参阅 toFloat()、toInt() 和toString()。
float QLocale::toFloat(QStringView s, bool *ok = nullptr) const
返回由本地化字符串s 所表示的浮点数。
如果转换发生溢出,则返回无穷大;如果因其他原因(例如下溢)导致转换失败,则返回 0.0。
如果ok 不是nullptr ,则通过将 *ok 设置为false 来报告失败,通过将 *ok 设置为true 来报告成功。
该函数会忽略首尾的空白字符。
另请参阅 toDouble()、toInt() 和toString()。
float QLocale::toFloat(const QString &s, bool *ok = nullptr) const
返回由本地化字符串s 所表示的浮点数。
如果转换发生溢出,则返回无穷大;如果因其他原因(例如下溢)导致转换失败,则返回 0.0。
如果ok 不是nullptr ,则通过将 *ok 设置为false 来报告失败,通过将 *ok 设置为true 来报告成功。
该函数会忽略首尾的空白字符。
另请参阅 toDouble()、toInt() 和toString()。
int QLocale::toInt(QStringView s, bool *ok = nullptr) const
返回由本地化字符串s 所表示的整数。
如果转换失败,该函数返回 0。
如果ok 不是nullptr ,则通过将 *ok 设置为false 来报告失败,通过将 *ok 设置为true 来报告成功。
该函数会忽略首尾的空格。
int QLocale::toInt(const QString &s, bool *ok = nullptr) const
返回由本地化字符串s 所表示的整数。
如果转换失败,该函数返回 0。
如果ok 不是nullptr ,则通过将 *ok 设置为false 来报告失败,通过将 *ok 设置为true 来报告成功。
该函数会忽略首尾的空格。
long QLocale::toLong(QStringView s, bool *ok = nullptr) const
返回由本地化字符串s 所表示的long int类型值。
如果转换失败,该函数返回 0。
如果ok 不是nullptr ,则通过将 *ok 设置为false 来报告失败,通过将 *ok 设置为true 来报告成功。
该函数会忽略首尾的空白字符。
另请参阅 toInt()、toULong()、toDouble() 和toString()。
long QLocale::toLong(const QString &s, bool *ok = nullptr) const
返回由本地化字符串“s ”所表示的 long int 值。
如果转换失败,该函数返回 0。
如果ok 不是nullptr ,则通过将 *ok 设置为false 来报告失败,通过将 *ok 设置为true 来报告成功。
该函数会忽略首尾的空白字符。
另请参阅 toInt()、toULong()、toDouble() 和toString()。
qlonglong QLocale::toLongLong(QStringView s, bool *ok = nullptr) const
返回由本地化字符串s 所表示的long long int类型值。
如果转换失败,该函数返回 0。
如果ok 不是nullptr ,则通过将 *ok 设置为false 来报告失败,通过将 *ok 设置为true 来报告成功。
该函数会忽略首尾的空白字符。
另请参阅 toInt()、toULongLong()、toDouble() 和toString()。
qlonglong QLocale::toLongLong(const QString &s, bool *ok = nullptr) const
返回由本地化字符串s 所表示的long long int类型值。
如果转换失败,该函数返回 0。
如果ok 不是nullptr ,则通过将 *ok 设置为false 来报告失败,通过将 *ok 设置为true 来报告成功。
该函数会忽略首尾的空白字符。
另请参阅 toInt()、toULongLong()、toDouble() 以及toString()。
QString QLocale::toLower(const QString &str) const
返回str 的小写副本。
如果 `Qt Core ` 使用了 ICU 库,则将根据当前区域设置的规则使用这些库进行转换。否则,转换可能会以平台依赖的方式进行,此时将使用 `QString::toLower()` 作为通用后备方案。
另请参阅 QString::toLower()。
short QLocale::toShort(QStringView s, bool *ok = nullptr) const
返回由本地化字符串s 所表示的short int类型值。
如果转换失败,该函数返回 0。
如果ok 不是nullptr ,则通过将 *ok 设置为false 来报告失败,通过将 *ok 设置为true 来报告成功。
该函数会忽略首尾的空格。
short QLocale::toShort(const QString &s, bool *ok = nullptr) const
返回由本地化字符串s 表示的short int类型值。
如果转换失败,该函数返回 0。
如果ok 不是nullptr ,则通过将 *ok 设置为false 来报告失败,通过将 *ok 设置为true 来报告成功。
该函数会忽略开头和结尾的空格。
QString QLocale::toString(qlonglong i) const
返回i 的本地化字符串表示形式。
另请参阅 toLongLong()、numberOptions()、zeroDigit() 和positiveSign()。
QString QLocale::toString(QTime time, QLocale::FormatType format = LongFormat) const
返回指定time 在指定format 中的本地化字符串表示形式(参见timeFormat())。
QString QLocale::toString(QDate date, QLocale::FormatType format, QCalendar cal) const
根据指定的format (参见dateFormat()),返回给定date 的本地化字符串表示形式,可选地针对指定的日历cal 。
注意:某些 区域设置可能使用会限制其可表示年份范围的格式。某些区域设置使用两位数年份可能会导致歧义。
QString QLocale::toString(const QDateTime &dateTime, QLocale::FormatType format, QCalendar cal) const
根据指定的format (参见dateTimeFormat()),返回给定dateTime 的本地化字符串表示形式,可选地针对指定的日历cal 。
注意:某些 区域设置可能使用会限制其所能表示的年份范围的格式。某些区域设置中使用两位数年份可能会导致歧义。
QString QLocale::toString(const QDateTime &dateTime, QStringView format, QCalendar cal) const
根据指定的format (参见QDateTime::toString()),返回给定dateTime 的本地化字符串表示形式,可选地针对指定的日历cal 。
如果format 是空字符串,则返回空字符串。
另请参阅 QDateTime::toString()、QDate::toString() 和QTime::toString()。
QString QLocale::toString(int i) const
这是一个重载函数。
另请参阅 toInt()。
QString QLocale::toString(long i) const
这是一个重载函数。
另请参阅 toLong()。
QString QLocale::toString(qulonglong i) const
这是一个重载函数。
另请参阅 toULongLong()、numberOptions()、zeroDigit() 以及positiveSign()。
QString QLocale::toString(short i) const
这是一个重载函数。
另请参阅 toShort()。
QString QLocale::toString(uint i) const
这是一个重载函数。
另请参阅 toUInt()。
QString QLocale::toString(ulong i) const
这是一个重载函数。
另请参阅 toULong()。
QString QLocale::toString(ushort i) const
这是一个重载函数。
另请参阅 toUShort()。
QString QLocale::toString(QDate date, QLocale::FormatType format = LongFormat) const
这是一个重载函数。
QString QLocale::toString(QDate date, QStringView format) const
这是一个重载函数。
QString QLocale::toString(QDate date, const QString &format) const
这是一个重载函数。
QString QLocale::toString(QTime time, QStringView format) const
这是一个重载函数。
QString QLocale::toString(QTime time, const QString &format) const
根据指定的format (参见QTime::toString()),返回给定time 的本地化字符串表示形式。
如果format 是空字符串,则返回空字符串。
这是一个重载函数。
另请参阅 dateFormat() 和QTime::toString()。
QString QLocale::toString(const QDateTime &dateTime, QLocale::FormatType format = LongFormat) const
这是一个重载函数。
QString QLocale::toString(const QDateTime &dateTime, QStringView format) const
这是一个重载函数。
QString QLocale::toString(const QDateTime &dateTime, const QString &format) const
这是一个重载函数。
QString QLocale::toString(QDate date, QStringView format, QCalendar cal) const
返回给定date 在指定format (参见QDate::toString())下的本地化字符串表示形式,可选地针对指定的日历cal 进行本地化。
如果format 是空字符串,则返回空字符串。
这是一个重载函数。
另请参阅 dateFormat() 和QDate::toString()。
QString QLocale::toString(double f, char format = 'g', int precision = 6) const
返回一个字符串,该字符串表示浮点数f 。
该表示的形式由参数format 和precision 控制。
format 的默认值为'g' 。它可以是以下任意一种:
| 格式 | 含义 | 格式precision |
|---|---|---|
'e' | 格式 [-]9.9e[+|-]999 | 小数点后位数 |
'E' | 格式为 [-]9.9E[+|-]999 | " |
'f' | 格式为 [-]9.9 | " |
'F' | 与'f' 相同,但INF和NAN的情况除外(见下文) | " |
'g' | 使用'e' 或'f' 格式,以哪种更简洁为准 | 有效数字的最大位数(尾随的零被省略) |
'G' | 使用'E' 或'F' 格式,以更简洁者为准 | " |
特殊值precision QLocale::FloatingPointShortest 会选择最短的表示形式,当将其作为数字读取时,可恢复原始的浮点数值。除此之外,任何负值precision 都会被忽略,系统将采用默认值 6。
对于'e' 、'f' 和'g' 这三种格式,正无穷大表示为“inf”,负无穷大表示为“-inf”,浮点NaN(非数值)表示为“nan”。 对于'E' 、'F' 和'G' 格式,则分别使用 "INF" 和 "NAN"。这与区域设置无关。
这是一个重载函数。
另请参阅 toDouble()、numberOptions()、exponential()、decimalPoint()、zeroDigit()、positiveSign()、percent()、toCurrencyString()、formattedDataSize()、以及QLocale::FloatingPointPrecisionOption 。
QString QLocale::toString(float f, char format = 'g', int precision = 6) const
返回一个字符串,该字符串表示浮点数f 。
format 和precision 的含义与toString (double、char、int)中描述的一致。
这是一个重载函数。
另请参阅 toFloat()、toDouble()、numberOptions()、exponential()、decimalPoint()、zeroDigit()、positiveSign()、percent()、toCurrencyString()、formattedDataSize() 以及QLocale::FloatingPointPrecisionOption 。
QString QLocale::toString(int number, int fieldWidth, char32_t fillChar) const
QString QLocale::toString(long number, int fieldWidth, char32_t fillChar) const
QString QLocale::toString(short number, int fieldWidth, char32_t fillChar) const
返回给定number 的字符串表示形式。
该字符串的长度应至少为fieldWidth 的绝对值;若number 的位数不足,则使用fillChar 作为填充。若fillChar 为'0' ,则使用该区域设置中的零字符作为填充。 若fieldWidth 为负值,则字符串以该数字的表示形式number 开头;若长度不足,则使用给定的fillChar 进行补零,直至达到长度-fieldWidth 。当fieldWidth为正值时,补零部分出现在数字表示形式number 之前。当number 为负值且fieldWidth 为正值时,若fillChar 为'0' ,则补零部分将插入在该语言环境的负号与数字起始位之间。
QString QLocale::toString(qlonglong number, int fieldWidth, char32_t fillChar) const
返回给定number 的字符串表示形式。
该字符串的长度应至少为fieldWidth 的绝对值;若number 的位数不足,则使用fillChar 作为补零。若fillChar 为'0' ,则使用该区域设置的零字符作为补零。 若fieldWidth 为负值,则字符串以number 的表示形式开头,若长度不足,则使用给定的fillChar 进行补零,直至达到-fieldWidth 的长度。对于正的 fieldWidth,补零部分出现在number 的表示形式之前。当number 为负值且fieldWidth 为正值时,若fillChar 属于'0' ,则补零部分将插入在该语言环境的负号与数字开头之间。
该函数重载了QLocale::toString()。
QString QLocale::toString(qulonglong number, int fieldWidth, char32_t fillChar) const
返回给定number 的字符串表示形式。
该字符串的长度应至少为fieldWidth 的绝对值;若number 的位数不足,则使用fillChar 作为填充。若fillChar 为'0' ,则使用该区域设置中的零位作为填充。若fieldWidth 为负数,则字符串以number 的表示形式开头,若长度不足,则使用给定的fillChar 将其填充至长度-fieldWidth 。对于正的fieldWidth,填充内容出现在number 的表示形式之前。
该函数重载了QLocale::toString()。
QString QLocale::toString(uint number, int fieldWidth, char32_t fillChar) const
QString QLocale::toString(ulong number, int fieldWidth, char32_t fillChar) const
QString QLocale::toString(ushort number, int fieldWidth, char32_t fillChar) const
返回给定number 的字符串表示形式。
该字符串的长度至少应为fieldWidth 的绝对值;若number 的位数不足,则使用fillChar 作为填充。若fillChar 为'0' ,则使用该区域设置中的零位作为填充。若fieldWidth 为负数,则字符串以number 的表示形式开头,并根据长度-fieldWidth (若长度不足,则使用给定的fillChar 进行填充)。对于正值的fieldWidth,填充部分出现在number 的表示形式之前。
QTime QLocale::toTime(const QString &string, QLocale::FormatType format = LongFormat) const
将string 解析为符合特定区域设置的format 格式的日期时间。
解析string 并返回其所表示的时间。时间字符串的格式根据format 参数确定(参见timeFormat())。
如果无法解析时间,则返回一个无效的时间。
另请参阅 timeFormat()、toDate()、toDateTime() 以及QTime::fromString()。
QTime QLocale::toTime(const QString &string, const QString &format) const
将string 解析为给定format 中的时间。
解析string 并返回其所表示的时间。有关format 的解释,请参阅QTime::fromString()。
如果无法解析该时间,则返回一个无效时间。
另请参阅 timeFormat()、toDate()、toDateTime() 以及QTime::fromString()。
uint QLocale::toUInt(QStringView s, bool *ok = nullptr) const
返回由本地化字符串s 所表示的无符号整数。
如果转换失败,该函数返回 0。
如果ok 不是nullptr ,则通过将 *ok 设置为false 来报告失败,并通过将 *ok 设置为true 来报告成功。
该函数会忽略首尾的空白字符。
uint QLocale::toUInt(const QString &s, bool *ok = nullptr) const
返回由本地化字符串s 表示的无符号整数。
如果转换失败,该函数返回 0。
如果ok 不是nullptr ,则通过将 *ok 设置为false 来报告失败,通过将 *ok 设置为true 来报告成功。
该函数会忽略首尾的空格。
ulong QLocale::toULong(QStringView s, bool *ok = nullptr) const
返回由本地化字符串s 所表示的无符号长整型值。
如果转换失败,该函数返回 0。
如果ok 不是nullptr ,则通过将 *ok 设置为false 来报告失败,通过将 *ok 设置为true 来报告成功。
该函数会忽略首尾的空白字符。
另请参阅 toLong()、toInt()、toDouble() 和toString()。
ulong QLocale::toULong(const QString &s, bool *ok = nullptr) const
返回由本地化字符串s 所表示的无符号长整型数值。
如果转换失败,该函数返回 0。
如果ok 不是nullptr ,则通过将 *ok 设置为false 来报告失败,通过将 *ok 设置为true 来报告成功。
该函数会忽略首尾的空白字符。
另请参阅 toLong()、toInt()、toDouble() 和toString()。
qulonglong QLocale::toULongLong(QStringView s, bool *ok = nullptr) const
返回由本地化字符串s 所表示的无符号long long int类型值。
如果转换失败,该函数返回 0。
如果ok 不是nullptr ,则通过将 *ok 设置为false 来报告失败,通过将 *ok 设置为true 来报告成功。
该函数会忽略首尾的空白字符。
另请参阅 toLongLong()、toInt()、toDouble() 和toString()。
qulonglong QLocale::toULongLong(const QString &s, bool *ok = nullptr) const
返回由本地化字符串s 所表示的无符号 long long int 类型值。
如果转换失败,该函数返回 0。
如果ok 不是nullptr ,则通过将 *ok 设置为false 来报告失败,并通过将 *ok 设置为true 来报告成功。
该函数会忽略首尾的空格。
另请参阅 toLongLong()、toInt()、toDouble() 和toString()。
ushort QLocale::toUShort(QStringView s, bool *ok = nullptr) const
返回由本地化字符串s 所表示的无符号短整型(unsigned short int)。
如果转换失败,该函数返回 0。
如果ok 不是nullptr ,则通过将 *ok 设置为false 来报告失败,通过将 *ok 设置为true 来报告成功。
该函数会忽略首尾的空格。
ushort QLocale::toUShort(const QString &s, bool *ok = nullptr) const
返回由本地化字符串s 所表示的无符号短整型值。
如果转换失败,该函数返回 0。
如果ok 不是nullptr ,则通过将 *ok 设置为false 来报告失败,通过将 *ok 设置为true 来报告成功。
该函数会忽略首尾的空格。
QString QLocale::toUpper(const QString &str) const
返回str 的大写版本。
如果 `Qt Core ` 使用了 ICU 库,则将根据当前区域设置的规则使用这些库进行转换。否则,转换可能以平台依赖的方式进行,并以 `QString::toUpper()` 作为通用后备方案。
注意:在 某些情况下,字符串的大写形式可能比原始字符串更长。
另请参阅 QString::toUpper()。
QStringList QLocale::uiLanguages(QLocale::TagSeparator separator = TagSeparator::Dash) const
用于选择翻译的区域设置名称列表
返回列表中的每个条目都是一个符合用户界面翻译偏好的区域设置名称。如果列表中的名称由多个标签组成,则按照separator 所示的方式将其连接起来。在 Qt 6.7 之前,使用连字符作为分隔符。
例如,使用默认分隔符QLocale::TagSeparator::Dash 时,如果用户已将系统配置为使用美国英语,则列表将为“en-Latn-US”、“en-US”、“en-Latn”、“en”。 条目的顺序即为检查翻译的优先顺序;列表中靠前的条目优先于靠后的条目。如果您的翻译文件(或其他与区域设置相关的资源)使用下划线而非连字符来分隔区域设置标签,请将 `QLocale::TagSeparator::Underscore ` 作为 `separator` 传入。
返回一个区域设置名称列表。该列表可能包含多种语言,尤其是在配置了多种 UI 翻译语言时,系统区域设置会包含多种语言。条目顺序具有重要意义。例如,对于系统区域设置,它反映了用户的偏好设置。
在 Qt 6.9 之前,该列表仅包含显式配置的区域设置及其等效项。 这导致一些调用者会添加截断形式(例如将 'en-Latn-DE' 截断为 'en')作为备选方案。这有时可能会导致选择不恰当,特别是当这些备选方案在更合适的后续条目之前被尝试时。
从 Qt 6.9 开始,在所有等同于显式指定区域设置的条目之后,返回列表中会包含合理的截断形式。此更改可提供更准确的备用选项,而调用方无需进行任何截断操作。
用户可以在系统配置中显式包含首选的备用区域设置(例如 en-US),以控制优先级顺序。建议您依赖 uiLanguages() 中条目的顺序,而不是使用自定义的备用方法。
您很可能无需直接使用此函数,只需将 `QLocale ` 对象传递给 `QTranslator::load()` 函数即可。
另请参阅 QTranslator 和bcp47Name()。
QList<Qt::DayOfWeek> QLocale::weekdays() const
返回一个列表,其中包含根据当前区域设置被视为工作日的日期。
QString QLocale::zeroDigit() const
返回该区域设置中的零位字符。
这是一个单一的 Unicode 字符,但可能被编码为代理对,因此(自 Qt 6.0 起)以字符串形式返回。在大多数区域设置中,其他数字在 Unicode 排序中紧随其后——然而,某些数字系统(尤其是将 U+3007 作为零的系统)并不具备连续的数字序列。 请使用 `toString()` 来获取数字的适当表示形式,而不是尝试根据这个零字符来构造数字。
另请参阅 toString()。
[noexcept] QLocale &QLocale::operator=(const QLocale &other)
成员变量文档
[since 6.7] const int QLocale::DefaultTwoDigitBaseYear
该变量存储了采用两位数年份格式的格式在该世纪内所选定的默认起始年份。该常量的值为1900 。
某些区域设置(特别是ShortFormat )仅使用年份的后两位数字。在 6.7 版本之前,此类情况下始终使用 1900 年作为基准年。现在,各种QLocale 和QDate 函数都提供了重载,允许调用者指定基准年,而该常量被用作其默认值。
该变量在 Qt 6.7 中引入。
另请参阅 toDate()、toDateTime()、QDate::fromString() 以及QDateTime::fromString()。
相关的非成员
[noexcept] size_t qHash(const QLocale &key, size_t seed = 0)
返回key 的哈希值,并使用seed 作为计算的种子。
[noexcept] bool operator!=(const QLocale &lhs, const QLocale &rhs)
如果两个QLocale 对象lhs 和rhs 不同,则返回true ;否则返回false 。
注意: 系统区域设置 并不等同于通过其language()、script() 和territory() 构造的QLocale 对象,即使这两个对象的所有数据字段都完全一致。此外,具有不同数字选项的两个区域设置也不被视为相等。
另请参阅 operator==() 和setNumberOptions()。
[noexcept] bool operator==(const QLocale &lhs, const QLocale &rhs)
如果两个QLocale 对象lhs 和rhs 相同,则返回true ;否则返回false 。
注意: 系统区域设置 不等于由其language()、script() 和territory() 构建的QLocale 对象,即使这两个对象的所有数据字段都一致。此外,具有不同数字选项的两个区域设置也不相等。
另请参阅 operator!=() 和setNumberOptions()。
© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.