TECH
QUESTION
자주하는 질문답변 입니다.
Oracle
작성자 | 유건데이타 | 등록일 | 2015-05-07 |
제목 | EXPORT 받은 화일의 CHARACTER SET 변경 프로그램 | ||
---|---|---|---|
EXPORT 받은 화일의 CHARACTER SET 변경 프로그램
============================================= PURPOSE ------- Export받은 dump file의 characterset이 US7ASCII일 경우 이를 KO16KSC5601 로 변경하는 conversion program에 대하여 알아본다. Explanation & Example --------------------- /***************************************************************** * * * convdat : Data Conversion Program * * * * converts exported files in different db-charset * * to specific db-charset files. * * * * compile 방법 : cc -o convdat convdat.c * * 실행 방법 : convdat dumpfile명 US7ASCII[KSC5601] * *****************************************************************/ #include #include #include #include int us7_to_ksc, ksc_to_us7; /* conversion flag */ main(argc,argv) int argc; char *argv[]; { us7_to_ksc = ksc_to_us7 = 0; if(argc != 3) { usage(argv[0]); exit(1); } if(!strcmp(argv[2],"KSC5601")) us7_to_ksc = 1; else if(!strcmp(argv[2],"US7ASCII")) ksc_to_us7 = 1; else usage(argv[0]); data_conversion(argv[1]); printf("conversion completed successfully !!!\n"); } usage(prog_name) char *prog_name; { printf("Usage: %s exported-file-name charset\n", prog_name); printf(" - charset : KSC5601|US7ASCII \n"); printf(" . KSC5601 - convert us7ascii format to ksc5601 format\n"); printf(" . US7ASCII - convert ksc5601 format to us7ascii format\n"); } data_conversion(usfile) char *usfile; { int fd; char conv_buffer[2]; if((fd = open(usfile, 2)) < 0) { perror("open"); exit(1); } if(lseek(fd, 1, 0) < 0) { perror("lseek"); exit(1); } if(us7_to_ksc){ conv_buffer[0] = 3; conv_buffer[1] = 'H'; } else if(ksc_to_us7){ conv_buffer[0] = '\0'; conv_buffer[1] = 1; } if(write(fd,conv_buffer,2) != 2) { perror("write"); exit(1); } close(fd); } Reference Documents ------------------- none 출처 : Technical Bulletin (Korean) |
Comment | |||
---|---|---|---|
등록된 코멘트가 없습니다. |