00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034
00035
00036
00037
00038
00039
00040
00041
00042
00043
00044
00045
00046 #ifndef RESBUND_H
00047 #define RESBUND_H
00048
00049 #include "unicode/utypes.h"
00050 #include "unicode/uobject.h"
00051 #include "unicode/ures.h"
00052 #include "unicode/unistr.h"
00053 #include "unicode/locid.h"
00054
00060 U_NAMESPACE_BEGIN
00061
00078 class U_COMMON_API ResourceBundle : public UObject {
00079 public:
00106 ResourceBundle(const UnicodeString& packageName,
00107 const Locale& locale,
00108 UErrorCode& err);
00109
00121 ResourceBundle(const UnicodeString& packageName,
00122 UErrorCode& err);
00123
00130 ResourceBundle(UErrorCode &err);
00131
00146 ResourceBundle(const char* packageName,
00147 const Locale& locale,
00148 UErrorCode& err);
00149
00156 ResourceBundle(const ResourceBundle &original);
00157
00167 ResourceBundle(UResourceBundle *res,
00168 UErrorCode &status);
00169
00176 ResourceBundle&
00177 operator=(const ResourceBundle& other);
00178
00182 virtual ~ResourceBundle();
00183
00195 ResourceBundle *clone() const;
00196
00207 int32_t
00208 getSize(void) const;
00209
00220 UnicodeString
00221 getString(UErrorCode& status) const;
00222
00235 const uint8_t*
00236 getBinary(int32_t& len, UErrorCode& status) const;
00237
00238
00250 const int32_t*
00251 getIntVector(int32_t& len, UErrorCode& status) const;
00252
00264 uint32_t
00265 getUInt(UErrorCode& status) const;
00266
00278 int32_t
00279 getInt(UErrorCode& status) const;
00280
00287 UBool
00288 hasNext(void) const;
00289
00295 void
00296 resetIterator(void);
00297
00305 const char*
00306 getKey(void) const;
00307
00315 const char*
00316 getName(void) const;
00317
00318
00325 UResType
00326 getType(void) const;
00327
00335 ResourceBundle
00336 getNext(UErrorCode& status);
00337
00346 UnicodeString
00347 getNextString(UErrorCode& status);
00348
00358 UnicodeString
00359 getNextString(const char ** key,
00360 UErrorCode& status);
00361
00370 ResourceBundle
00371 get(int32_t index,
00372 UErrorCode& status) const;
00373
00382 UnicodeString
00383 getStringEx(int32_t index,
00384 UErrorCode& status) const;
00385
00395 ResourceBundle
00396 get(const char* key,
00397 UErrorCode& status) const;
00398
00408 UnicodeString
00409 getStringEx(const char* key,
00410 UErrorCode& status) const;
00411
00421 const char*
00422 getVersionNumber(void) const;
00423
00431 void
00432 getVersion(UVersionInfo versionInfo) const;
00433
00440 const Locale&
00441 getLocale(void) const;
00442
00453 const Locale
00454 getLocale(ULocDataLocaleType type, UErrorCode &status) const;
00459 ResourceBundle
00460 getWithFallback(const char* key, UErrorCode& status);
00466 virtual UClassID getDynamicClassID() const;
00467
00473 static UClassID U_EXPORT2 getStaticClassID();
00474
00475 private:
00476 ResourceBundle();
00477
00478 UResourceBundle *fResource;
00479 void constructForLocale(const UnicodeString& path, const Locale& locale, UErrorCode& error);
00480 Locale *fLocale;
00481
00482 };
00483
00484 U_NAMESPACE_END
00485 #endif