• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            大龍的博客

            常用鏈接

            統(tǒng)計

            最新評論

            跨平臺的java和c的字符轉(zhuǎn)化,克服中文亂碼問題(ZZ)

            #define   CURRENT_ENCODE   "GBK"  
               
              jstring   CharTojstring(JNIEnv*   env,   char*   str)  
              {  
                              jstring   rtn   =   0;  
                              jsize   len   =   strlen(str);  
               
                              jclass   clsstring   =   env->FindClass("java/lang/String");  
               
                              //new   encode   string   default   "GBK"  
                              jstring   strencode   =   env->NewStringUTF(CURRENT_ENCODE);  
                              jmethodID   mid   =   env->GetMethodID(clsstring,   "<init>",   "([BLjava/lang/String;)V");  
                              jbyteArray   barr   =   env->NewByteArray(len);  
               
                              env->SetByteArrayRegion(barr,0,len,(jbyte*)str);  
               
                              //call   new   String(byte[]   b,String   encode)  
                              rtn   =   (jstring)env->NewObject(clsstring,mid,barr,strencode);  
               
                              return   rtn;  
              }  
               
              char*   jstringToChar(JNIEnv*   env,   jstring   jstr)  
              {  
                              char*   rtn   =   NULL;  
                              jclass   clsstring   =   env->FindClass("java/lang/String");  
               
                              //new   encode   string   default   "GBK"  
                              jstring   strencode   =   env->NewStringUTF(CURRENT_ENCODE);  
                              jmethodID   mid   =   env->GetMethodID(clsstring,   "getBytes",   "(Ljava/lang/String;)[B");  
               
                              //call   String.getBytes   method   to   avoid   incompatible   migrating   into   solaris  
                              jbyteArray   barr=   (jbyteArray)env->CallObjectMethod(jstr,mid,strencode);  
               
                              jsize   alen   =   env->GetArrayLength(barr);  
                              jbyte*   ba   =   env->GetByteArrayElements(barr,JNI_FALSE);  
               
                              if(alen   >   0)  
                              {  
                                              rtn   =   (char*)malloc(alen+1);         //new   char[alen+1];  
                                              memcpy(rtn,ba,alen);  
                                              rtn[alen]=0;  
                              }  
                              env->ReleaseByteArrayElements(barr,ba,0);  
               
                              return   rtn;  
              } 

            posted on 2010-04-25 19:55 大龍 閱讀(833) 評論(0)  編輯 收藏 引用


            只有注冊用戶登錄后才能發(fā)表評論。
            網(wǎng)站導(dǎo)航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


            欧美精品国产综合久久| 91精品国产综合久久香蕉| 欧美日韩久久中文字幕| 亚洲熟妇无码另类久久久| 久久这里只精品国产99热| 久久人妻少妇嫩草AV无码蜜桃| 久久人人爽人人爽人人片AV东京热| 无码人妻久久一区二区三区免费| 一级做a爰片久久毛片人呢| 无码精品久久一区二区三区 | 久久AV高清无码| 精品国产热久久久福利| 伊人久久大香线焦AV综合影院| 狠狠色丁香婷婷久久综合不卡| 18禁黄久久久AAA片| 国产精品欧美久久久久天天影视| 精品国产乱码久久久久软件| 国内精品伊人久久久久影院对白| 欧美丰满熟妇BBB久久久| 开心久久婷婷综合中文字幕| 国产精品久久久久影院色| 亚洲精品乱码久久久久66| 久久婷婷人人澡人人| 国产精品日韩欧美久久综合| 久久久久高潮毛片免费全部播放| 久久香综合精品久久伊人| 久久久久国产视频电影| 9191精品国产免费久久| 好久久免费视频高清| 97精品国产91久久久久久| 亚洲午夜久久久影院伊人| 色播久久人人爽人人爽人人片AV| 久久久久久久国产免费看| 国产成人香蕉久久久久| 91亚洲国产成人久久精品| 久久久青草久久久青草| 久久国产乱子伦精品免费强| 久久线看观看精品香蕉国产| 久久亚洲国产中v天仙www| 色综合久久88色综合天天| 国产精品伦理久久久久久|