我在改写过去的一个VC通讯程序时 有一个DLL中的接受函数 如下:GetNewMss(char* NewMsg);
在VC中,我每次都能取道正确的值,可是 我在C#中,我用CHAR * 数组去取值的后付给STRING时完全是乱码,我只好用BYTE * 去取值的时候 只有中文是乱码 数字和字母,符号都是真确的。
在C#中 该如何接受从VC写的DLL 中传来的CHAR * 数据呢?
在VC中,我每次都能取道正确的值,可是 我在C#中,我用CHAR * 数组去取值的后付给STRING时完全是乱码,我只好用BYTE * 去取值的时候 只有中文是乱码 数字和字母,符号都是真确的。
在C#中 该如何接受从VC写的DLL 中传来的CHAR * 数据呢?
解决方案 »
- FileSystemWatcher 自动上传图片
- multimedia timer与queue Timer的区别
- 远程连接Oracle的问题----------------------------------------------------------------------
- 我有个很重要的问题 问大家!```
- 数据表主键由2列字段组成,怎样用tables[].rows.find进行查找
- 如何在类中调用上一层类的方法或事件?
- 大家看下这一小段代码,操作excel的.
- 50分请大家讨论
- 请教一个初级问题
- 直角三角形个数
- 请教高人,怎样通过数据库动态建立toolbar
- 如何将16进制的Byte[]转为字符串?例如b[0]=0x01,b[1]=0xAB,转为"01AB"
现在居然还要自己转换出中文UNICODE 郁闷 最好有人提供个代码看看
System.Text.Encoding.BigEndianUnicode.GetString(byte[]);如果是用的小大顺序的unicode
System.Text.Encoding.Default.GetString(byte[]);
System.Text.Encoding.BigEndianUnicode.GetString(byte[]);如果是用的小大顺序的unicode
System.Text.Encoding.Default.GetString(byte[]);
顺利问一下,如果万一VC发过来的是GB2312和ASCII混合码,你怎样解决