通过IDL-to-Java和CORABA就可以实现
解决方案 »
- Netbeans生成的这个 回车时触发多次 而且第按一次回车都会比上次多触发一次
- 【软考书籍求推荐】
- 做通讯软件待遇怎么样啊
- 请问jsp+servlet如何实现图片上传到数据库,并读出显示
- scjp 重载,请问这样写有什么问题??
- 有甚麼方法驅的字符在字符串中的索引.
- 为什么在new一个FTPClinet 的时候线程会不动? 是不是socket没有建立? 怎样的解决?
- 弱弱的问题,大侠帮忙
- 散分
- 能不能告诉我使用editplus编写java如何编译成字节码文件,如何解释?,虽然问题简单一点,可对我很需要
- ◎◎◎◎◎ 谁知道哪里有《JAVA实例技术手册》一书下载? ◎◎◎◎
- JBuilder下怎样生成可执行文件?
个还是6个字节的(byte)3,(我记不清了),也不要用ObjectOutputStream,它的所有方法都对在发送的数据流前自动加几个字节,其实是可以理解的,为了区分发送的是什么数据格式,当然在头部加上java内部能确认的标示。
总之,按字节数组发送,就可。
try again
Java:
name.getBytes();C/CPP:
jsize len;
len = env->GetArrayLength(name);
jbyte *attrname;
attrname = (jbyte *) malloc(sizeof(jbyte)*(len+1));
if ( attrname!= NULL) {
env->GetByteArrayRegion(name, 0, len, attrname);
attrname[len] = '\0';
}
(char *)attrname就是正确的中文了。从C传字符到java请使用以下函数:jstring WindowsTojstring( JNIEnv* env, char* str )
{
jstring rtn = 0;
int slen = strlen(str);
wchar_t* buffer = 0;
if( slen == 0 )
rtn = env->NewStringUTF( str ); //UTF ok since empty string
else
{
int length = MultiByteToWideChar( CP_ACP, 0, (LPCSTR)str, slen, NULL, 0 );
buffer = (wchar_t*)malloc( length*2 + 1 );
if( MultiByteToWideChar( CP_ACP, 0, (LPCSTR)str, slen, (LPWSTR)buffer, length ) >0 )
rtn = env->NewString( (jchar*)buffer, length );
}
if( buffer )
free( buffer );
return rtn;
}