jni在c++中怎样把jstring转成unsigned char* !!!

gg0637 2007-08-07 10:08:33
jni在c++中怎样把jstring转成unsigned char* !!!
急~!!!谢谢高手指教!
...全文
823 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
david2083 2007-08-08
  • 打赏
  • 举报
回复
char* buf[1024];
WideCharToMultiByte(CP_ACP,0,wp,wcslen(wp),buf,1024,0,0);
david2083 2007-08-07
  • 打赏
  • 举报
回复
int WideCharToMultiByte(
UINT CodePage,
DWORD dwFlags,
LPCWSTR lpWideCharStr,
int cchWideChar,
LPSTR lpMultiByteStr,
int cbMultiByte,
LPCSTR lpDefaultChar,
LPBOOL lpUsedDefaultChar
);

char* buf[1024];
WideCharToMultiByte(CP_ACP,0,wp,wcslen(wp),buf,1024,0,0);
david2083 2007-08-07
  • 打赏
  • 举报
回复
有宽字符函数啊
gg0637 2007-08-07
  • 打赏
  • 举报
回复
C++里的函数参数是unsigned char*阿。。
david2083 2007-08-07
  • 打赏
  • 举报
回复
直接用宽字符串也挺好的

gg0637 2007-08-07
  • 打赏
  • 举报
回复
WideCharToMultiByte怎么用?
david2083 2007-08-07
  • 打赏
  • 举报
回复

wchar_t* wp = (wchar_t*)env->GetStringChars(jstr,true);

这样能得到一个宽字符串,再用 WideCharToMultiByte 转一下就行了
david2083 2007-08-07
  • 打赏
  • 举报
回复
分太少了
gg0637 2007-08-07
  • 打赏
  • 举报
回复
别沉了。
gg0637 2007-08-07
  • 打赏
  • 举报
回复
我是说C++里别人写好的函数,参数是unsigned char*,别人函数都是dll里的。。必须用unsigned char*

62,623

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧