X7ROOT File Manager
Current Path:
/opt/alt/libicu/usr/share/doc/alt-libicu-devel/samples/legacy
opt
/
alt
/
libicu
/
usr
/
share
/
doc
/
alt-libicu-devel
/
samples
/
legacy
/
??
..
??
Makefile
(2.24 KB)
??
README
(3.45 KB)
??
legacy.cpp
(3.04 KB)
??
legacy.sln
(1.25 KB)
??
legacy.vcxproj
(14.47 KB)
??
legacy.vcxproj.filters
(1.04 KB)
??
newcol.cpp
(2.79 KB)
??
oldcol.cpp
(3.23 KB)
Editing: legacy.cpp
/* ******************************************************************************* * * © 2016 and later: Unicode, Inc. and others. * License & terms of use: http://www.unicode.org/copyright.html#License * ******************************************************************************* ******************************************************************************* * * Copyright (C) 2001 - 2005, International Business Machines * Corporation and others. All Rights Reserved. * ******************************************************************************* * file name: main.cpp * encoding: UTF-8 * tab size: 8 (not used) * indentation:4 * * created on: 2001jul24 * created by: Vladimir Weinstein */ /****************************************************************************** * main program demonstrating using two versions of ICU in the same project ******************************************************************************/ #include <stdio.h> #include "unicode/utypes.h" #include "unicode/ustring.h" extern "C" void test_current(UChar data[][5], uint32_t size, uint32_t maxLen, uint8_t keys[][32]); extern "C" void test_legacy(UChar data[][5], uint32_t size, uint32_t maxlen, uint8_t keys[][32]); void printZTUChar(const UChar *str) { while(*str != 0) { if(*str > 0x1F && *str < 0x80) { fprintf(stdout, "%c", (*str) & 0xFF); } else { fprintf(stdout, "\\u%04X", *str); } str++; } } void printArray(const char* const comment, const UChar UArray[][5], int32_t arraySize) { fprintf (stdout, "%s\n", comment); int32_t i = 0; for(i = 0; i<arraySize; i++) { fprintf(stdout, "%d ", i); printZTUChar(UArray[i]); fprintf(stdout, "\n"); } } void printKeys(const char *comment, uint8_t keys[][32], int32_t keySize) { int32_t i = 0; uint8_t *currentKey = NULL; fprintf(stdout, "%s\n", comment); for(i = 0; i<keySize; i++) { currentKey = keys[i]; while(*currentKey != 0) { if(*currentKey == 1) { fprintf(stdout, "01 "); } else { fprintf(stdout, "%02X", *currentKey); } currentKey++; } fprintf(stdout, " 00\n"); } } //int main(int argc, const char * const argv[]) { int main(int, const char * const *) { static const char* test[4] = { "\\u304D\\u3085\\u3046\\u0000", "\\u30AD\\u30E6\\u30A6\\u0000", "\\u304D\\u3086\\u3046\\u0000", "\\u30AD\\u30E5\\u30A6\\u0000" }; #if 0 static const char* test2[4] = { "dbc\\u0000", "cbc\\u0000", "bbc\\u0000", "abc\\u0000" }; #endif static UChar uTest[4][5]; static uint8_t keys[4][32]; uint32_t i = 0; for(i = 0; i<4; i++) { u_unescape(test[i], uTest[i], 5); } printArray("Before current", uTest, 4); test_current(uTest, 4, 5, keys); printArray("After current", uTest, 4); printKeys("Current keys", keys, 4); for(i = 0; i<4; i++) { u_unescape(test[i], uTest[i], 5); } printArray("Before legacy", uTest, 4); test_legacy(uTest, 4, 5, keys); printArray("After legacy", uTest, 4); printKeys("Legacy keys", keys, 4); return 0; }
Upload File
Create Folder