/** *FormatorparseaTimeUnitAmount,usingpluralrulesfortheunitswhereavailable. * *<P> *CodeSample: *<pre> *// create time unit amount instance - a combination of Number and time unit *UErrorCodestatus=U_ZERO_ERROR; *TimeUnitAmount*source=newTimeUnitAmount(2,TimeUnit::UTIMEUNIT_YEAR,status); *// create time unit format instance *TimeUnitFormat*format=newTimeUnitFormat(Locale("en"),status); *// format a time unit amount *UnicodeStringformatted; *Formattableformattable; *if(U_SUCCESS(status)){ *formattable.adoptObject(source); *formatted=((Format*)format)->format(formattable,formatted,status); *Formattableresult; *((Format*)format)->parseObject(formatted,result,status); *if(U_SUCCESS(status)){ *assert(result==formattable); *} *} *</pre> * *<P> *@seeTimeUnitAmount *@seeTimeUnitFormat *@deprecatedICU53UsetheMeasureFormatclassinstead.
*/ class U_I18N_API TimeUnitFormat: public MeasureFormat {
public:
// it might actually be simpler to make them Decimal Formats later. // initialize all private data members void setup(UErrorCode& status);
// initialize data member without fill in data for fTimeUnitToCountToPattern void initDataMembers(UErrorCode& status);
// initialize fTimeUnitToCountToPatterns from current locale's resource. void readFromCurrentLocale(UTimeUnitFormatStyle style, constchar* key, const UVector& pluralCounts,
UErrorCode& status);
// check completeness of fTimeUnitToCountToPatterns against all time units, // and all plural rules, fill in fallback as necessary. void checkConsistency(UTimeUnitFormatStyle style, constchar* key, UErrorCode& status);
// fill in fTimeUnitToCountToPatterns from locale fall-back chain void searchInLocaleChain(UTimeUnitFormatStyle style, constchar* key, constchar* localeName,
TimeUnit::UTimeUnitFields field, const UnicodeString&, constchar*, Hashtable*, UErrorCode&);
// copy hash table void copyHash(const Hashtable* source, Hashtable* target, UErrorCode& status); // get time unit name, such as "year", from time unit field enum, such as // UTIMEUNIT_YEAR. staticconstchar* getTimeUnitName(TimeUnit::UTimeUnitFields field, UErrorCode& status);
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.