ACIL FM
Dark
Refresh
Current DIR:
/usr/share/doc/libicu-devel/samples/plurfmtsample
/
usr
share
doc
libicu-devel
samples
plurfmtsample
Upload
Zip Selected
Delete Selected
Pilih semua
Nama
Ukuran
Permission
Aksi
plurfmtsample.cpp
4.31 MB
chmod
View
DL
Edit
Rename
Delete
plurfmtsample.vcxproj
7.19 MB
chmod
View
DL
Edit
Rename
Delete
plurfmtsample.vcxproj.filters
941 B
chmod
View
DL
Edit
Rename
Delete
Edit file: /usr/share/doc/libicu-devel/samples/plurfmtsample/plurfmtsample.cpp
/******************************************************************************** * © 2016 and later: Unicode, Inc. and others. * License & terms of use: http://www.unicode.org/copyright.html#License ******************************************************************************** ******************************************************************************** * Copyright (C) 2008-2013, International Business Machines Corporation and * others. All Rights Reserved. ******************************************************************************** */ //! [PluralFormatExample1] #include <iostream> #include "unicode/plurfmt.h" #include "unicode/msgfmt.h" #include "unicode/ustdio.h" //! [PluralFormatExample1] using namespace std; using namespace icu; static void PluralFormatExample() { u_printf("=============================================================================\n"); u_printf(" PluralFormatExample()\n"); u_printf("\n"); u_printf(" Use PluralFormat and Messageformat to get Plural Form for languages below:\n"); u_printf(" English, Slovenian\n"); u_printf("=============================================================================\n"); //! [PluralFormatExample] UErrorCode status =U_ZERO_ERROR; Locale locEn = Locale("en"); Locale locSl = Locale("sl"); UnicodeString patEn = UnicodeString("one{dog} other{dogs}"); // English 'dog' UnicodeString patSl = UnicodeString("one{pes} two{psa} few{psi} other{psov}"); // Slovenian translation of dog in Plural Form // Create a new PluralFormat for a given locale locale and pattern string PluralFormat plfmtEn = PluralFormat(locEn, patEn,status); PluralFormat plfmtSl = PluralFormat(locSl, patSl,status); // Constructs a MessageFormat for given pattern and locale. MessageFormat* msgfmtEn = new MessageFormat("{0,number} {1}", locEn,status); MessageFormat* msgfmtSl = new MessageFormat("{0,number} {1}", locSl,status); int numbers[] = {0, 1, 2, 3, 4, 5, 10, 100, 101, 102}; u_printf("Output by using PluralFormat and MessageFormat API\n"); u_printf("%-16s%-16s%-16s\n","Number", "English","Slovenian"); // Use MessageFormat.format () to format the objects and append to the given StringBuffer for (int i=0;i<sizeof(numbers)/sizeof(int);i++) { UnicodeString msgEn,msgSl; FieldPosition fpos = 0; Formattable argEn[]={Formattable(numbers[i]), Formattable(plfmtEn.format(numbers[i],status))}; Formattable argSl[]={Formattable(numbers[i]), Formattable(plfmtSl.format(numbers[i],status))}; msgfmtEn->format(argEn,2,msgEn,fpos,status); msgfmtSl->format(argSl,2,msgSl,fpos,status); u_printf("%-16d%-16S%-16S\n", numbers[i], msgEn.getTerminatedBuffer(),msgSl.getTerminatedBuffer()); } u_printf("\n"); // Equivalent code with message format pattern UnicodeString msgPatEn = "{0,plural, one{# dog} other{# dogs}}"; UnicodeString msgPatSl = "{0,plural, one{# pes} two{# psa} few{# psi} other{# psov}}"; MessageFormat* altMsgfmtEn = new MessageFormat(msgPatEn, locEn,status); MessageFormat* altMsgfmtSl = new MessageFormat(msgPatSl, locSl,status); u_printf("Same Output by using MessageFormat API only\n"); u_printf("%-16s%-16s%-16s\n","Number", "English","Slovenian"); for (int i=0;i<sizeof(numbers)/sizeof(int);i++) { UnicodeString msgEn,msgSl; Formattable arg[] = {numbers[i]}; FieldPosition fPos =0; altMsgfmtEn->format(arg, 1, msgEn, fPos, status); altMsgfmtSl->format(arg, 1, msgSl, fPos,status); u_printf("%-16d%-16S%-16S\n", numbers[i], msgEn.getTerminatedBuffer(), msgSl.getTerminatedBuffer()); } delete msgfmtEn; delete msgfmtSl; delete altMsgfmtEn; delete altMsgfmtSl; //! [PluralFormatExample] /* output of the sample code: ******************************************************************** Number English Slovenian 0 0 dogs 0 psov 1 1 dog 1 pes 2 2 dogs 2 psa 3 3 dogs 3 psi 4 4 dogs 4 psi 5 5 dogs 5 psov 10 10 dogs 10 psov 100 100 dogs 100 psov 101 101 dogs 101 pes 102 102 dogs 102 psa *********************************************************************/ } int main (int argc, char* argv[]) { PluralFormatExample(); return 0; }
Simpan
Batal
Isi Zip:
Unzip
Create
Buat Folder
Buat File
Terminal / Execute
Run
Chmod Bulk
All File
All Folder
All File dan Folder
Apply