ICTCLAS2011_JNI 학습노트 - ICTCLASImportUserDictFile 및 ICTCLASSaveTheUsrDic 커넥터

3831 단어 import
1、int ICTCLAS_ImportUserDictFile(byte[] sPath, int eCodeType) 인터페이스:
     * Method:     ICTCLAS_ImportUserDictFile * Parameter: byte[] sPath * Parameter: int eCodeType * Returns: ICTCLASAPI int * Description: 사용자가 가져온 단어 파일의 형식은 다음과 같습니다. 1.단어와 어성용'@@'의 간격.예를 들어'중과원 @@nr;2.일행일사;3.어성은 생략할 수 있다
2、int ICTCLAS_SaveTheUsrDic() 커넥터:
     * Method:     ICTCLAS_SaveTheUsrDic * Description:1.이 인터페이스는 기존/data/폴더 사용자 관련 사전을 덮어씁니다.                             2.구성 파일에서 다음에 사용할 사전을 지정할 수 있습니다.
 
 
여기서 ICTCLASImportUserDictFile 인터페이스는 사용자 정의 사전을 파일로 가져오는 데 사용되며, 가져오면 ICTCLAS 를 선택적으로 호출할 수 있습니다.SaveTheUsrdic 인터페이스는 데이터 디렉터리에 저장하는 데 사용되며, 이 때 디렉터리 아래에 UserDict가 더 많아집니다.map、UserDict.pos、UserDict.pdat 세 개의 파일, 그리고 configure를 수정할 수 있습니다.xml 프로필은 사용자 사전을 불러올지 여부를 선택합니다.(이 세 파일의 구체적인 의미는 아직 잘 모르겠습니다. 접미사 이름으로 볼 때 맵 파일은 어성영사 파일이어야 합니다..pos 파일이나 어성표시 파일이어야 합니다. pdat는 알아볼 수 없습니다~ ~, 보신 분들은 댓글로 알려주시기 바랍니다!)
호출 예:
 
 
package ICTCLAS.I3S.test;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.UnsupportedEncodingException;

import ICTCLAS.I3S.AC.ICTCLAS50;

public class Test_ImportUsrDict {

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		ICTCLAS50 ictclas = new ICTCLAS50();
		String useage = "Useage : java Test_ICTCLAS_ParagraphProcess sPath [nPOSmap]";
		if (args.length < 1) {
			System.err.println(useage);
			return;
		}
		try {
			if (!ictclas.ICTCLAS_Init(args[0].getBytes("GB2312"))) {
				System.err.println("Initial failed!");
				return;
			}
			System.out.println("Initial successed!");
			String input = "                         ,            ICTCLAS。";

			/*        (0         ,1         ,2        ,3        ) */
			int nPosmap = args.length == 2 ? Integer.valueOf(args[1]) : 1;
			ictclas.ICTCLAS_SetPOSmap(nPosmap);

			/*         */
			byte nativeBytes[] = ictclas.ICTCLAS_ParagraphProcess(input
					.getBytes("GB2312"), 0, 1);
			String nativeStr = new String(nativeBytes, 0, nativeBytes.length,
					"GB2312");
			System.out.println("            :" + nativeStr);

			int nCount = 0;
			BufferedReader reader = new BufferedReader(new InputStreamReader(
					System.in, "GB2312"));
			System.out.print("input the src file:");
			String usrdir = reader.readLine();
			//             ,               (0:type
			// unknown;1:ASCII ;2:GB2312,GBK,GB10380;3:UTF-8;4:BIG5)
			nCount = ictclas.ICTCLAS_ImportUserDictFile(usrdir
					.getBytes("GB2312"), 2);
			System.out.println("       " + nCount);

			//           
			byte nativeBytes1[] = ictclas.ICTCLAS_ParagraphProcess(input
					.getBytes("GB2312"), 0, 1);
			String nativeStr1 = new String(nativeBytes1, 0,
					nativeBytes1.length, "GB2312");
			System.out.println("      :" + nativeStr1);
			ictclas.ICTCLAS_SaveTheUsrDic(); /*        */
		} catch (UnsupportedEncodingException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		} catch (IOException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		} finally {
			//         
			ictclas.ICTCLAS_Exit();
		}
	}

}

좋은 웹페이지 즐겨찾기