java 开发corba遇到的问题,十万火急!!!!!!!!!! 用byte[]传汉字,在java的客户方用StringBuffer(,“gb2312");就可以了。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 大侠: 我server端用的是c++,怎么用byte[]传汉字呀 我想更C++的Server端没有关系,还是java的unicode转化上出了问题.中文问题以前有很多,转化一下再试试.我从来都是用英文. 关注。不知道为什么java 常出中文显示的问题,我用各种JDBC去连Oracle, SqlSer,为了取得正确的汉字,得不停的测试各种方法,也是被搞得很掺。 我碰到过这样的问题并解决了:在bean里把汉字写到文件里,读出来结果是乱码换了好多流的组合都不行,用的JDE是1.3结果换了一个运行环境1.3.0_02以后就可以显示汉字了现在1.3.1都出来了,用它估计能解决乱码的问题。我没用过1.3.1,我想应该行的,因为1.3.0_02都行呵呵 这个问题和编码格式无关,主要是IDL文件的问题,CORBA处理字符串有:String和wstring两种类型,string类型主要用于处理ASCII类型的字符串,wstring用于处理多字节的字符串,例如:中文。所以,你在定义你的IDL文件时,凡是有用到中文的接口方法的参数,要用wstring来代替string类型即可,祝你好运! 马兄,我的邮件是[email protected],再联系。 String_var是个包含char* 的类.代替你做一些经常会忘记的free memory的工作.namespace CORBA{ char* *string_alloc(ULong len); char* *string_dup(const char*); void string_free(char*); ...} 拷贝String_var可以用 string_dup来产生内存的拷贝.再把指针付给另外一个String_var即可. WString_var一样. 另外问一下,中文问题解决了? 或者简单点.直接a=b;这是一种deep copy. 白云蓝天兄,我又遇到了麻烦,救我啊。用什么办法可以从char * 转换成wchar*。我做的一个访问数据库的东东,有方法statement->get_string(char* value);可是我希望取出的是wchar *。另外有没有办法即使使用string类型也不会出现乱码问题?我好像是用的iso8859-1的方式解决的,可现在怎么也实现不了,真要命。怎样把分给你呀? Shanghai Peter.Liu先生,你的来信我已收到,今天邮件发不出,在这里回答吧。我做的是一个电信ip网管的项目,其实代码并不复杂,我认为技术问题集中在C++实现的server端,java与idl映射的相当完美,不存在太多问题,c由于指针的原因显得复杂一些。遇到的问题有:1.struct的映射2.sequence的映射,如何返回一个sequence类型的变量,包括interface的sequence.3.event的实现。4.不知你遇到没遇到这样的问题 struct MyStruct{ string name; string spell;} interface a{ attribute MyStruct property; }映射后在实现代码中有 property(MyStruct * _property); MyStruct_ptr property();为实现这两个方法我在实现类aImpl中定义private MyStruct_ptr temp;做为存放信息的指针变量,可是除在property()方法体内之外,temp是一个空指针,不知道为什么corba会把这个指针释放,我得不到想要的值。有解决这个问题的同志回答一下。 各位:如下问题Server端:CORBA::Short CPaymentMethod:: getPayment(CORBA::WString_out _PaymentName){ ......... _PaymentName = CORBA::wstring_dup((const unsigned short *)"XX卡支付"); .........}Client端:StringHolder PaymentName = new StringHolder();//调用上面Server端的CORBA对象中的方法int i = m_MyORB.m_myPaymentMethod.getPayment(PaymentName);System.out.println("Payment=" + PaymentPlugin.value);//无法显示中文???? corba中文论坛:http://www.deping.net/cgi-bin/lbbs/leoboard.cgicorba人有家了。 关于java.lang.Math.max方法的源码看不懂,求指点 java菜鸟求解,大家帮帮忙好么?谢谢了 错误原因:java.sql.SQLException:Already closed RCP文件路径问题! 写了1个邮件发送程序,在本机测试就能发送出去,但是放到别的机器上就发布出去,求解,谢谢 java如何同系统剪切板进行交换? 下面的情况该用什么UML图描述? 我做的小计算器大家提提意见 关于java报表的网站有那些? 急!!!一定加分 《JAVA2 编程起步》的例子在哪下载??急!急!急! 急急急,在corba中如何互联不同的orb?
我server端用的是c++,怎么用byte[]传汉字呀
namespace CORBA
{
char* *string_alloc(ULong len);
char* *string_dup(const char*);
void string_free(char*);
...
}
拷贝String_var可以用 string_dup来产生内存的拷贝.再把指针付给另外一个String_var即可.
WString_var一样.
另外问一下,中文问题解决了?
直接a=b;
这是一种deep copy.
用什么办法可以从char * 转换成wchar*。
我做的一个访问数据库的东东,有方法statement->get_string(char* value);
可是我希望取出的是wchar *。
另外有没有办法即使使用string类型也不会出现乱码问题?我好像是用的iso8859-1的方式
解决的,可现在怎么也实现不了,真要命。
怎样把分给你呀?
遇到的问题有:
1.struct的映射
2.sequence的映射,如何返回一个sequence类型的变量,包括interface的sequence.
3.event的实现。
4.不知你遇到没遇到这样的问题
struct MyStruct
{ string name;
string spell;
}
interface a{
attribute MyStruct property;
}
映射后在实现代码中有
property(MyStruct * _property);
MyStruct_ptr property();
为实现这两个方法我在实现类aImpl中定义private MyStruct_ptr temp;
做为存放信息的指针变量,可是除在property()方法体内之外,temp是一个空指
针,不知道为什么corba会把这个指针释放,我得不到想要的值。有解决这个问题的同志回答一下。
Server端:
CORBA::Short CPaymentMethod:: getPayment(CORBA::WString_out _PaymentName)
{
.........
_PaymentName = CORBA::wstring_dup((const unsigned short *)"XX卡支付");
.........
}Client端:
StringHolder PaymentName = new StringHolder();//调用上面Server端的CORBA对象中的方法
int i = m_MyORB.m_myPaymentMethod.getPayment(PaymentName);System.out.println("Payment=" + PaymentPlugin.value);//无法显示中文????
http://www.deping.net/cgi-bin/lbbs/leoboard.cgi
corba人有家了。