文章列表
最近在做一个Android电子词典,其中在从词库中读取词条时,用到了jni---java调用c++;在java代码里调用本地方法时,难免会java与c++之间传递参数。传递的参数若是英文的话,比较好解决,网上一般都有解决方法,用着也没问题;但是在传递中文字符串时,就需要转换一下。下面就是我自己的传递方式:
1.C++ --> java
在C++中,解压出的词条是 jbyte* 类型的,有英文,有中文,所以,我就把这些数据以byteArray的形式给传递到java里面:
//功能:把解压出的词条放入数组中
//输入:plema 解压出的词条
//输入:i ...
/**
* 获得单个汉字的Ascii,并用"-"连接成一个字符串
*
* @param cn char 汉字字符
* @return string 错误返回 空字符串,否则返回ascii
*/
public static String getCnAscii(char cn) {
byte[] bytes = null;
try {
bytes = (String.valueOf(cn)).getByte ...