JNI編程中jstring 轉換到CString

lyz 14年前發布 | 3K 次閱讀 JavaSwing

<PRE style="BACKGROUND-COLOR: #c5c5c5; FONT-WEIGHT: bold" class=java name="code">//jstring 轉換到CString CString jstringToCString(JNIEnv *m_penv,jstring jnistr) { // We modified in this function because we founf if the length is of two chars // it add a rubish char concatenated at the end of the string

  CString            dummyCString, retCString;
  jsize            istringlength;

  jboolean isCopy = JNI_TRUE;
  const jchar *pChar = m_penv->GetStringChars(jnistr,&isCopy);

  istringlength = m_penv->GetStringLength(jnistr);

  dummyCString = (BSTR) pChar;

  retCString = dummyCString.Mid(0, istringlength);

  m_penv->ReleaseStringChars(jnistr,pChar);

  return retCString;

} </PRE>

 本文由用戶 lyz 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!