问题

我已经通过使用JNI将URL字符串从Java传递到C代码asjstring数据类型。我的库方法需要achar *as url。

我怎么能转换jstringinchar *?

P.S。:在C中使用jcharArray有什么好处吗? (即在本机方法中传递char []而不是字符串)

#1 热门回答(203 赞)

这是我在开始使用JNI时发现的一些有用的链接

关于你的问题,你可以使用它

JNIEXPORT void JNICALL Java_ClassName_MethodName(JNIEnv *env, jobject obj, jstring javaString)

{

const char *nativeString = (*env)->GetStringUTFChars(env, javaString, 0);

// use your string

(*env)->ReleaseStringUTFChars(env, javaString, nativeString);

}

#2 热门回答(43 赞)

首先感谢Jason Rogers的回答。

InAndroid&&cpp应该是这样的:

const char *nativeString = env->GetStringUTFChars(javaString, JNI_FALSE);

// use your string

env->ReleaseStringUTFChars(javaString, nativeString);

可以修复此错误:

1.error:' - >'的基本操作数有非指针类型'JNIEnv'

2.error:没有匹配函数来调用'JNIEnv :: GetStringUTFChars(JNIEnv *&, jstring *&,bool)'

3.error:没有匹配函数来调用'JNIEnv :: ReleaseStringUTFChars(JNIEnv *&, jstring *&,char const *&)'

4.add"env-> DeleteLocalRef(nativeString);"最后。

java jstring_JNI将jstring转换为char *相关推荐

  1. Java char转换为String,String转换为char数组

    Today we will look into java char to String program. We will also learn how to convert String to a c ...

  2. 在Java中将字符串转换为char数组,将char数组转换为String

    Today we will learn how to convert String to a char array and then char array to String in Java. 今天, ...

  3. char数组转换成字符串_将字符串转换为char数组java –将字符串转换为char

    char数组转换成字符串 Sometimes we have to convert String to the character array in java programs or convert ...

  4. android jni jstring 转 char*

    今天,简单讲讲Android jni如何将java的Sring转成char*. 这个之前一直不理解,所以我都是android传入byte[]转成char*,有一篇博客专门讲了这个.后来发现用Strin ...

  5. 2个在Java中将Byte []数组转换为String的示例

    将字节数组转换为String似乎很容易,但是很难做到正确. 每当字节转换为String或char时,许多程序员都会犯忽略字符编码的错误,反之亦然. 作为程序员,我们都知道计算机只能理解二进制数据,即0 ...

  6. java将中文Url转换为浏览器识别的编码

    java将中文Url转换为浏览器识别的编码 用到了URLEncoder.encode 解码的话用到 URLDecoder 代码如下: public static String changeHanzi( ...

  7. Java Object类型如何转换为其它类型呢?

    转自: Java Object类型如何转换为其它类型呢? 下文笔者讲述Object类转换为其它类型的方法分享,如下所示: Object转String 实现思路:方式1:使用Object.toStrin ...

  8. java将Unicode编码转换为汉字

    java实现unicode编码转换为汉字编码的代码! package com.amarsoft.court.app.commom;public class JSStrDecoder {public s ...

  9. java中文数字改阿拉伯数字_[Java教程]Java实现中文数字转换为阿拉伯数字

    [Java教程]Java实现中文数字转换为阿拉伯数字 0 2015-05-19 16:00:20 /** * 中文數字转阿拉伯数组[十万九千零六十 --> 109060] * @author 雪 ...

最新文章

  1. 【直播】杨剑砺:数据可视化漫谈
  2. 查看磁盤使用情况linux,在Linux系统下安装Filelight来查看磁盘使用情况
  3. linux双系统重装win7系统下载,Windows与Ubuntu双系统重装WIN7后修复Grub2
  4. C++中查看数据类型的方法
  5. r k-means 分类结果_机器学习-Kmeans均值聚类算法(贪心学院)
  6. linux服务器指示灯,【转】明明白白你的Linux服务器——故障篇 | 旺旺知识库
  7. 漫步数理统计十一——连续随机变量(下)
  8. react-native与原生三种交互模式
  9. SSM 封装base(二) -封装分页
  10. vba 生成euc文件的方法
  11. python输出名字和字数_Python字数和排名
  12. java简历vue专业技能_用vue 写一个好看的个人简历
  13. win10录屏_99%的人都忽略Windows自带的录屏软件,超好用!
  14. 用强化学习制作游戏AI
  15. vue-element-admin的二次开发
  16. Android Studio设置http proxy加速下载(亲测有效)
  17. 宏基因组分析步骤Linux,宏基因组--简单流程(代码)
  18. TCP三次握手四次挥手简介
  19. CentOS7挂载磁盘,4T磁盘挂载方法
  20. 如何发现「将死」的ReLu?可视化工具TensorBoard助你一臂之力

热门文章

  1. 主键冲突报什么代码_程序员经典面试题,Mysql自增主键为什么不连续
  2. 关于WS_EX_LAYERED的思考
  3. java thread类是抽象类_Java继承抽象类Thread,实现接口Runnable,倒计时,线程休眠,静态变量【诗书画唱】...
  4. JLink v8的自我救赎 defective or does not support the following memory access Read 0x02000004
  5. LLVM学习笔记(43)
  6. 3D游戏建模行业这5点很真实
  7. 计算机性能指标分数,vista分数意思
  8. 一个比较vista的vista主题for rf5.0fb(转)
  9. Adobe Photoshop cs3 你此时无法使用此产品
  10. 数学建模用python分析gdp_【志领学院】HiMCM数学建模 商业事件建模分析——活动回顾...