.TH detect_handledata 3 2019-08-01 "libchardet manuals" .\" Process with .\" nroff -man detect_handledata.3 .\" 2019-08-01 JoungKyun.Kim .SH 이름 detect_handledata, detect_handledata_r \- 문자셋과 정확도를 측정 .SH 사용법 .B "#include " .sp .BI "short detect_handledata (Detect ** handle, const char * inbuf, DetectObj ** outbuf);" .sp .BI "short detect_handledata_r (Detect ** handle, const char * inbuf, size_t inlen, DetectObj ** outbuf);" .SH 설명 .B inbuf 의 문자셋과 정확도를 .B outbuf에 저장한다. .BI detect_handledata API는 binary safe 문제로 더이상 사용을 권장하지 않습니다. .BI detect_handledata_r API를 이용하십시오. .SS API 아규먼트 .TP .B handle .br .BI detect_init api에 의하여 할당된 detect handle resource. .TP .B inbuf .br 문자셋과 정확도를 측정할 입력 문자열 .B inlen .br 문자셋과 정확도를 측정할 입력 문자열의 길이 .TP .B outbuf .br .B inbuf 의 문자셋과 정확도를 구하여 저장을 한다. .B outbuf 의 구조는 다음과 같다. .nf typedef struct DetectObject { char * encoding; float confidence; } DetectObj; .fi .B outbuf는 .BI detect_obj_init api를 이용하여 초기화를 한 후에 .BI detect api로 넘겨줘야 한다. .SH 반환값 경우에 따라 아래의 상태를 반환한다. .TP .B CHARDET_SUCCESS .br 성공 .TP .B CHARDET_NO_RESULT .br 탐지하지 못했을 경우 .TP .B CHARDET_NULL_OBJECT .br .B outbuf 을 .BI chardet_obj_init api를 이용하여 메모리 할당을 하지 않았을 경우. .TP .B CHARDET_OUT_OF_MEMORY .br 내부 API에서 .B "out of memory" 가 발생했을 경우 .SH 예제 .nf #include int main (void) { Detect * d; DetectObj * obj; int i, arrayNum; char *str[] = { "this is ascii", "이건 euc-kr 입니다." }; arrayNum = sizeof (str) / sizeof (str[0]); if ( (d = detect_init ()) == NULL ) { fprintf (stderr, "chardet handle initialize failed\\n"); return CHARDET_MEM_ALLOCATED_FAIL; } for ( i=0; iencoding, obj->confidence, obj->bom); detect_obj_free (&obj); } detect_destroy (&d); return 0; } .fi .SH 저자 김정균 .SH 버그 리포트 https://github.com/Joungkyun/libchardet/issues .SH "참고" detect_obj_init(3), detect_obj_free(3), detect_init(3), detect_reset(3), detect_destroy(3)