求救啊!帮忙翻译一段delphi的代码到C#

CY53212798 2009-03-31 12:45:01
function TCodeConverter.GBKToUCS2(Contend:String): string;
var
UniCode4String: UCS4String;
i: Integer;
Tep: Array of Byte;
Resutl_String: string;
begin
if length(Trim(Contend))=0 then
Result:=''
else
begin
UniCode4String:=WideStringToUCS4String(trim(Contend));
SetLength(Tep,(length(UniCode4String)-1)*2);
for i:=0 to length(UniCode4String)-2 do
begin
Tep[2*i]:=(UniCode4String[i]) div 256;
Tep[2*i+1]:=UniCode4String[i] mod 256;
end;
SetLength(Resutl_String,(length(UniCode4String)-1)*4);
BinToHex(@Tep[0],@Resutl_String[1],length(Tep));
Result:=Resutl_String;
end;

end;
希望高手能帮帮忙啊!在线等!
...全文
149 18 打赏 收藏 转发到动态 举报
写回复
用AI写文章
18 条回复
切换为时间正序
请发表友善的回复…
发表回复
CY53212798 2009-04-01
  • 打赏
  • 举报
回复
终于解决了~~~把pdu的那个类里面的转换函数修改下,就能用了……谢谢大家啦1
panrongzeng 2009-04-01
  • 打赏
  • 举报
回复
据说UCS4String是long数组
panrongzeng 2009-04-01
  • 打赏
  • 举报
回复
找出这个UCS4String类型在C#是匹配那个类型
然后再找出,长字符串转到UCS4String这个类型的方法,那么这个代码就可以转过来了
其他都是基础函数
jlj84237485 2009-04-01
  • 打赏
  • 举报
回复
帮顶一下
liuyeede 2009-04-01
  • 打赏
  • 举报
回复
不知道UCS4String类型在C#中如何表示。
其余的都好说
sxmonsy 2009-04-01
  • 打赏
  • 举报
回复
没太看出来是怎么转的
CY53212798 2009-04-01
  • 打赏
  • 举报
回复
高手们帮帮忙啊!转换前你好
转换后044F60597D
应该是这样吧!
王集鹄 2009-04-01
  • 打赏
  • 举报
回复
private String GBKToUCS2(String str)
{
return BitConverter.ToString(Encoding.BigEndianUnicode.GetBytes(str)).Replace("-", "");
}


测试:Console.WriteLine(GBKToUCS2("Zswang 路过!"));
输出:005A007300770061006E006700208DEF8FC70021和Delphi中一致。
plglenn 2009-04-01
  • 打赏
  • 举报
回复
学习
cpio 2009-04-01
  • 打赏
  • 举报
回复

private String GBKToUCS2(String str)
{
byte[] bt = Encoding.BigEndianUnicode.GetBytes(str);
String rt = "";
for (int i = 0; i < bt.Length; i++)
{
rt += String.Format("{0:X}", bt[i]);
}

return rt;
}
zzxap 2009-03-31
  • 打赏
  • 举报
回复
http://computer.99365.net/user1/blizzard/archives/2007/9488.html

http://download.csdn.net/down/232023/liugang418000
  • 打赏
  • 举报
回复
好像是转换编码的哦
看不懂
Teng_s2000 2009-03-31
  • 打赏
  • 举报
回复
可以搜下需要实现的功能!!

Delphi不能像C#与VB那样相互转化的,好多方法都是不支持的!!
风骑士之怒 2009-03-31
  • 打赏
  • 举报
回复
mark
moyue008 2009-03-31
  • 打赏
  • 举报
回复
.
CY53212798 2009-03-31
  • 打赏
  • 举报
回复
这个是关于gb 到 ucs2的
CY53212798 2009-03-31
  • 打赏
  • 举报
回复
转换前你好
转换后4F60597D
cpio 2009-03-31
  • 打赏
  • 举报
回复
给几个转换前的和转换后的结果,我试试

111,126

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Creator Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧