From e3f702e83a26468ee44f3f342a7a40a252f4603c Mon Sep 17 00:00:00 2001 From: "Suren A. Chilingaryan" Date: Fri, 29 Jul 2005 03:26:28 +0000 Subject: Translation - Language Translation using libtranslate is implemented - Autoengine sets current charset (option) --- examples/example2.c | 60 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 60 insertions(+) create mode 100644 examples/example2.c (limited to 'examples/example2.c') diff --git a/examples/example2.c b/examples/example2.c new file mode 100644 index 0000000..cc4a3fa --- /dev/null +++ b/examples/example2.c @@ -0,0 +1,60 @@ +#include +#include +#include +#include + +#include + + +int main(int argc, char *argv[]) { + rcc_language_id language_id, current_language_id, english_language_id; + rcc_string rccstring; + const char *language; + char buf[255]; + char *recoded; + + rcc_class classes[] = { + { "input", RCC_CLASS_STANDARD, NULL, NULL, "Input Encoding", 0 }, + { "output", RCC_CLASS_STANDARD, "LC_CTYPE", NULL, "Output Encoding", 0 }, + { NULL } + }; + + setlocale(LC_ALL, ""); + + rccInit(); + rccInitDefaultContext(NULL, 0, 0, classes, 0); + rccInitDb4(NULL, "example", 0); + rccSetOption(NULL, RCC_OPTION_TRANSLATE, 1); + +// rccExternalInit(); +// rccExternalFree(); + + current_language_id = rccGetCurrentLanguage(NULL); + english_language_id = rccGetLanguageByName(NULL, "en"); + if (argc>1) rccSetLanguageByName(NULL, argv[1]); + language_id = rccGetCurrentLanguage(NULL); + + language = rccGetCurrentLanguageName(NULL); + if (language) printf("Current Language: %s\n\n", language); + else printf("Unable Detect Language\n\n"); + + while (fgets(buf,255,stdin)) { + if (strlen(buf)<2) break; + + rccSetLanguage(NULL, language_id); + rccstring = rccFrom(NULL, 0, buf); + if (rccstring) { + rccSetLanguage(NULL, english_language_id); + recoded = rccTo(NULL, 1, rccstring); + if (recoded) { + printf(recoded); + free(recoded); + } else printf("Recoding from UTF-8 is failed\n"); + free(rccstring); + } else printf("Recoding to UTF-8 is failed\n"); + } + + rccFree(); + + return 0; +} -- cgit v1.2.3