我不确定我是否理解您的问题正确。但是我想您想做的是通过多个jni调用使某种c ++对象保持活动状态。
您可以做很多事情。首先解析您的文件,然后将c ++对象存储在全局变量中。这是最简单的解决方案,但不是一个很好的解决方案。
您也可以将c ++对象的生命周期移入Java。
jlong java_some_class_jni_method(...){ .... parse your text file .... MyParseclass* cls = new MyParseclass(...); .... return (jlong) cls;}但是请记住,您需要再次删除此本地c ++类。因此,您需要一个jni方法并确保对其进行调用。
void java_some_calls_jni_method(..., jlong clsPtr){ MyParseclass* cls = (MyParseclass*)clsPtr; ... do maybe do something with cls and access the data... delete cls; // do not use the jlong again in any call}顺便说一句:如果您发布一些代码,那将更有帮助。但我希望这里的伪代码能有所帮助。



