DELPHI 开发JNI 之 JAVA 对象Vector应用
前言:
DELPHI 的教程很多,在这里不加赘述,着重介绍JAVA里的常用对象的调用,
公司有这方面的功能需求,用了2天的时间研究了下JNI相关的东西.把我在研究过程中比较挠头的一些问题的解决方法发上来. 主要介绍 JAVA中常用对象的在开发JNI时候的应用.
Vector 应用
Vector 可以说 JAVA里常用的一个对象. 类似于DELPHI 的 Record集合.操作方法也很多. 具体可参见 JDK1.5API_CN(全).CHM 在我的资源中有下载.
Vector 常用操作首先就是初始化,还有add 方法和 Get 方法 下面代码简单的包含了这3个常用操作. 初始化一个VECTOER 然后 Add 进一个 String 对象, 然后 在使用Get 方法取出改 String
代码:
Var
bmVectorClass : JClass;
bmVectormid : JMethodID;
bmVectorOBJ : jObject;
JFVS : JString;
Mid : JMethodID;
begin
//1查找vector 类
bmVectorClass:=JVM.FindClass('java/util/Vector');
//2查找vector 的初始化方法
bmVectormid := JVM.GetMethodID(bmVectorClass,'<init>','()V');
//3.实例化
bmVectorOBJ := JVM.NewObjectV(bmVectorClass,bmVectormid,nil);
JFVS := ‘测试字符串’;
//获得ADD 方法 ID
mid := JVM.GetMethodID(bmVectorClass,'add','(Ljava/lang/Object;)Z');
//调用 ADD 方法 []中的是参数
JVM.CallNonvirtualObjectMethod(bmVectorOBJ,bmVectorClass,mid,[ JFVS]);
//获得GET 方法ID
bmVectormid := JVM.GetMethodID(bmVectorClass,'get','(I)Ljava/lang/Object;');
JFVS:= JVM.CallNonvirtualObjectMethod(bmVectorOBJ,bmVectorClass,bmVectormid,[0]);
end;