/********************************************************************** * © 2016 and later: Unicode, Inc. and others. * License & terms of use: http://www.unicode.org/copyright.html#License *********************************************************************** *********************************************************************** * COPYRIGHT: * Copyright (c) 1999-2002, International Business Machines Corporation and * others. All Rights Reserved. ***********************************************************************/ #include "unicode/unistr.h" #include "unicode/msgfmt.h" #include "unicode/calendar.h" #include <stdio.h> #include <stdlib.h> #include "util.h" // The message format pattern. It takes a single argument, an integer, // and formats it as "no", "one", or a number, using a NumberFormat. static UnicodeString PATTERN( "Received {0,choice,0#no|1#one|1& {0,number,integer}} arguments" " on {1,date,long}." ); int main(int argc, char **argv) { UErrorCode status = U_ZERO_ERROR; UnicodeString str; FieldPosition pos; // Create a message format MessageFormat msg(PATTERN, status); check(status, "MessageFormat::ct"); // Create the argument list Formattable msgArgs[2]; msgArgs[0].setLong(argc-1); msgArgs[1].setDate(Calendar::getNow()); // Format the arguments msg.format(msgArgs, 2, str, pos, status); check(status, "MessageFormat::format"); printf("Message: "); uprintf(str); printf("\n"); printf("Exiting successfully\n"); return 0; }