锘??xml version="1.0" encoding="utf-8" standalone="yes"?>
棣栧厛涓嬭澆ICTCLAS Beta鐗堟湰鍏紑婧愪唬鐮?鐐瑰嚮涓嬭澆
鎴戜嬌鐢ㄧ殑鏄疺isual studio 2005寮鍙戠幆澧冿紝婧愮爜浣跨敤VC6寮鍙戠殑錛岀幇鍦ㄦ妸榪欎釜宸ョ▼杞Щ鍒癡S2005涓嬨傛垜浣跨敤鐨勬柟娉曟瘮杈冪錛屽熀鏈笂鏄睘浜庝綋鍔?鏆村姏鍨嬬殑錛屼笉榪囪嚜宸辮寰楃埥灝卞彲浠ヤ簡
鍦╒S2005閲屾柊寤篧in32欏圭洰FREEICTCLAS,鍦╝pplication Settings閫夐」閲岄変腑Dll鍜孍mpty Project,鐒跺悗鏂板緩浠ヤ笅榪囨護鍣?New Filter)錛屽茍涓斿皢鍘熼」鐩殑婧愮爜鍙婂叾鐩綍緇撴瀯copy鍒扮幇鍦ㄧ殑win32欏圭洰鐨勭洰褰曚笅(榪囨護鍣ㄥ拰欏圭洰鐩綍紺烘剰鍥?
紺烘剰鍥?鐐瑰嚮鍓嶉潰+鍙峰睍寮)
榪欐牱榪欎釜win32宸ョ▼鍩烘湰灝卞緩瀹屼簡銆?br />
瑙傚療ICTCLAS婧愪唬鐮佸悗緙栧啓浠ヤ笅甯︽湁native澹版槑鐨勬柟娉曠殑java綾伙紝鍙疄鐜頒簡澶翠袱涓柟娉曪紝絎笁涓殏鏈疄鐜幫紝涓嶪CTCLAS鎺ュ彛鍩烘湰淇濇寔涓鑷?br />
浠g爜濡備笅:
FreeICTCLAS.java(鐐瑰嚮+灞曞紑)
鐢熸垚FreeICTCLAS.class鏂囦歡鍚庯紝鍐嶄嬌鐢╦avah FreeICTCLAS鐢熸垚FreeICTCLAS.h錛屼唬鐮佸涓嬶細
/* DO NOT EDIT THIS FILE - it is machine generated */
#include <jni.h>
/* Header for class FreeICTCLAS */
#ifndef _Included_FreeICTCLAS
#define _Included_FreeICTCLAS
#ifdef __cplusplus
extern "C" {
#endif
/*
* Class: FreeICTCLAS
* Method: FreeICTCLAS_Init
* Signature: (II)Z
*/
JNIEXPORT jboolean JNICALL Java_FreeICTCLAS_FreeICTCLAS_1Init
(JNIEnv *, jobject, jint, jint);
/*
* Class: FreeICTCLAS
* Method: FreeICTCLAS_ParagraphProcess
* Signature: (Ljava/lang/String;)Ljava/lang/String;
*/
JNIEXPORT jstring JNICALL Java_FreeICTCLAS_FreeICTCLAS_1ParagraphProcess
(JNIEnv *, jobject, jstring);
/*
* Class: FreeICTCLAS
* Method: FreeICTCLAS_FileProcess
* Signature: (Ljava/lang/String;Ljava/lang/String;)Z
*/
JNIEXPORT jboolean JNICALL Java_FreeICTCLAS_FreeICTCLAS_1FileProcess
(JNIEnv *, jobject, jstring, jstring);
#ifdef __cplusplus
}
#endif
#endif
涓昏浠g爜濡備笅錛?br />
#include "FreeICTCLAS.h"
#include "util.h"
#include "globeVar.h"
#include <string.h>
#include <stdlib.h>
/*
* Class: FreeICTCLAS
* Method: FreeICTCLAS_Init
* Signature: (II)Z
*/
JNIEXPORT jboolean JNICALL Java_FreeICTCLAS_FreeICTCLAS_1Init
(JNIEnv *env, jobject obj, jint OperateType, jint OutputFormat)
{
m_ICTCLAS.m_nOperateType = OperateType;
m_ICTCLAS.m_nOutputFormat = OutputFormat;
return JNI_TRUE;
}
/*
* Class: FreeICTCLAS
* Method: FreeICTCLAS_ParagraphProcess
* Signature: (Ljava/lang/String;)Ljava/lang/String;
*/
JNIEXPORT jstring JNICALL Java_FreeICTCLAS_FreeICTCLAS_1ParagraphProcess
(JNIEnv *env, jobject obj, jstring sParagraph)
{
char *sResult,*sSource;
sSource = jstringTochar(env, sParagraph);
if(m_ICTCLAS.m_nOutputFormat!=2)
sResult=new char [(strlen(sSource)+13)*3];
else
sResult=new char [(strlen(sSource)+13)*50];
if(!m_ICTCLAS.ParagraphProcessing(sSource,sResult))
exit(1);
else
return chartoJstring(env,sResult);
}
/*
* Class: FreeICTCLAS
* Method: FreeICTCLAS_FileProcess
* Signature: (Ljava/lang/String;Ljava/lang/String;)Z
*/
JNIEXPORT jboolean JNICALL Java_FreeICTCLAS_FreeICTCLAS_1FileProcess
(JNIEnv *env, jobject obj, jstring sSourceFilename, jstring sResultFilename)
{
return JNI_TRUE;
}
緙栬瘧欏圭洰錛屽湪release鐩綍涓壘鍒癋reeICTCLAS.dll錛屽皢鍏舵嫹璐濆埌FreeICTCLAS.class鎵鍦ㄧ殑鐩綍涓?br />
鐜板湪榪愯java FreeICTCLAS鍗沖彲鐪嬪埌涓枃鍒嗚瘝鐨勭粨鏋滃暒
鎬庝箞鎶奍CTCLAS JNI for Java娣誨姞鍒癳clipse欏圭洰涓幓?涓嬫鍐欏惂銆?br />
褰撲綘鐪嬪埌榪欏彞璇濈殑鏃跺欙紝浣犲彲浠ョ洿鎺ュ彂閭歡鍚戞垜绱㈣win32欏圭洰鍜宔clipse欏圭洰
BlogJava鍚庡彴緙栬緫鍣ㄤ笉濂界敤錛宆_^
宸茬粡涔犳儻浜嗕粠Hello World寮濮嬨?br /> 鎴戜嬌鐢ㄧ殑鏄疛DK_1.6.0鍜孷isual studio 2005錛屼嬌鐢╒isual studio 2005鐢熸垚鍙緵Java璋冪敤鐨刣ll闇瑕佸仛浠ヤ笅璁劇疆錛?br /> 鍦╒isual studio 2005鐨勮彍鍗昑ools\options\Projects and Solutions\VC++ Directories錛屾坊鍔燡DK瀹夎鐩綍涓媔nlcude鍜宨nclude/win32鐩綍,濡備笅鍥炬墍紺?/span>
緙栧啓甯︽湁native澹版槑鐨勬柟娉曠殑java綾伙紝浠g爜濡備笅
鐒跺悗鍦ㄥ懡浠よ杈撳叆Javac JniTest.java緙栬瘧JniTest.java
鐢熸垚JniTest.class鏂囦歡鍚庯紝鍐嶄嬌鐢╦avah JniTest鐢熸垚JniTest.h錛屼唬鐮佸涓?/p>
鍦╒isual studio 2005閲屾柊寤洪」鐩甒in32 project錛屽湪寮瑰嚭鐨勫璇濇涓偣鍑籥pplication setting錛岀劧鍚庡啀閫変笂dll鍜孍mpty project銆?鎺ョ潃鍦ㄩ」鐩腑娣誨姞JniTest.h鍜孞niTest.cpp錛孞niTest.cpp浠g爜濡備笅錛?
緙栬瘧鐢熸垚JniTest.dll,鍦ㄩ」鐩笅鎵懼埌瀹冿紝騫舵嫹璐濆埌JniTest.java鎵鍦ㄧ殑鐩綍,鏈鍚庣紪鍐欐祴璇曠▼搴廡est.java錛屽涓嬶細
鏈鍚庣粓浜庣湅鍒頒簡鏈熷緟鐨凥ello World!