求大神帮忙把如下DELPHI的函数,转换成C#的函数,感谢,万分感谢。

问题描述

functionUncryptStr(Src,Key:String):string;//对字符串解密(Src:源Key:密匙)varKeyLen:Integer;KeyPos:Integer;offset:Integer;dest:string;SrcPos:Integer;SrcAsc:Integer;TmpSrcAsc:Integer;beginifTrim(Src)=''thenbeginResult:='';Exit;end;KeyLen:=Length(Key);ifKeyLen=0thenkey:='delphi';KeyPos:=0;offset:=StrToInt('$'+copy(src,1,2));SrcPos:=3;repeatSrcAsc:=StrToInt('$'+copy(src,SrcPos,2));ifKeyPos<KeyLenThenKeyPos:=KeyPos+1elseKeyPos:=1;TmpSrcAsc:=SrcAscxorOrd(Key[KeyPos]);ifTmpSrcAsc<=offsetthenTmpSrcAsc:=255+TmpSrcAsc-offsetelseTmpSrcAsc:=TmpSrcAsc-offset;dest:=dest+chr(TmpSrcAsc);offset:=srcAsc;SrcPos:=SrcPos+2;untilSrcPos>=Length(Src);Result:=Dest;end;

解决方案

解决方案二:
DELHPI示例:UncryptStr('0D0B111310EC05','')调用应该解释成源码为:bjfaxt不知道C#调用后,解释成什么。
解决方案三:
直译过来如下,是否有误,这个你自己调试吧staticstringUncryptStr(stringSrc,stringKey){//对字符串解密(Src:源Key:密匙)intKeyLen,KeyPos,offset;stringdest="";intSrcPos,SrcAsc,TmpSrcAsc;stringResult=String.Empty;if(!String.IsNullOrEmpty(Src)){KeyLen=Key.Length;if(KeyLen==0)Key="delphi";KeyPos=0;offset=Convert.ToInt32(Src.Substring(0,2));SrcPos=3;do{SrcAsc=Convert.ToInt32(Src.Substring(SrcPos-1,2));if(KeyPos<KeyLen)KeyPos=KeyPos+1;elseKeyPos=1;TmpSrcAsc=SrcAsc^Convert.ToChar(Key[KeyPos]);if(TmpSrcAsc<=offset)TmpSrcAsc=255+TmpSrcAsc-offset;elseTmpSrcAsc=TmpSrcAsc-offset;dest=dest+Convert.ToChar(TmpSrcAsc);offset=SrcAsc;SrcPos=SrcPos+2;}while(SrcPos>=Src.Length);Result=dest;}returnResult;}

时间: 2024-08-30 03:37:10

求大神帮忙把如下DELPHI的函数,转换成C#的函数,感谢,万分感谢。的相关文章

dataset-C#ArrayList 求大神帮忙

问题描述 C#ArrayList 求大神帮忙 如图,把json转成了arraylist,arrlylist的每个元素又包含三个元素,怎么转换成二维数组或者datatable呢 解决方案 定义一个二维数组,然后循环arrayList,将子元素插入数组即可. 解决方案二: 自己写一个算法,遍历arraylist的每个元素,然后每个元素再逐个遍历并放到数组中 解决方案三: 我怎么觉得你读json文件的方式不太对呢,newtonsof.dll中提供了专门的读写函数,不用把括号也读取出来的,不然json还

ie-IE浏览器样式错误的问题,求大神帮忙?

问题描述 IE浏览器样式错误的问题,求大神帮忙? 2C 为什么页面的样式在别的浏览器上显示正确,在IE浏览器上完全没有了样式,有什么可能啊,急需?? 解决方案 ie不完全兼容html5和css3 解决方案二: 你用的哪个版本的Ie;你可以向上或向下调调看看 解决方案三: 应该是不支持,兼容性问题吧.可以写下判断是那种浏览器,然后根据不同浏览器调用不同样式. 解决方案四: 什么样式,是颜色呢,还是排版 解决方案五: .bb{ background-color:#f1ee18;/*所有识别*/ .b

谁有6路抢答器的设计呀?求大神帮忙!!!

问题描述 谁有6路抢答器的设计呀?求大神帮忙!!! (1)以单片机为核心,设计一个6位竞赛抢答器:同时供6名选手或6个代表队比赛,分别用6个按钮S0-S5表示.(2)给节目主持人设置5个控制开关,用来控制系统的清零和抢答的开始及各种时间的调节控制:(3)抢答器具有数据锁存功能.显示功能和声光提示功能:(4)主持人可以通过两个时间调节键来调节抢答限制时间和答题限制时间.需在主持人按下抢答开始按钮后抢答方可开始,且各个环节都有相应时间限制. 最好是用C语言编程的

关于java重写paint方法,求大神帮忙

问题描述 关于java重写paint方法,求大神帮忙 我能理解第一段模版函数,然后通过继承和重写方法,代入,为什么第二段代码,不需要带入父类方法,自己就跑起来了了,好像只要把paint重写了,系统自动跑, 还有中间通过屏幕监听的控制关闭的代码看不懂,为什么要这样写,老师说是匿名内部类,求大神讲解 解决方案 4444LJKHJHJHK'HJKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKJJJJJJJJJJJJJJ 解决方案二: 问题1:重新pa

android 类qq空间图片查看器。出现好多错误 求大神帮忙。小女涉入甚浅。

问题描述 android 类qq空间图片查看器.出现好多错误 求大神帮忙.小女涉入甚浅. 11-20 11:26:39.629: E/AndroidRuntime(1136): FATAL EXCEPTION: main 11-20 11:26:39.629: E/AndroidRuntime(1136): java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{com.example.desktop/co

jdk-执行source /etc/profile时候报如下错误,求大神帮忙!

问题描述 执行source /etc/profile时候报如下错误,求大神帮忙! 10C 在/etc/profile配置jdk路径,执行source /etc/profile时候报如下错误:bash: STSIZEpathmunge: command not found export JAVA_HOME=/usr/java/jdk1.6.0_45export PATH=$PATH:$JAVA_HOME/binexport CLASSPATH=.:$JAVA_HOME/lib/tools.jar:

ligertree 求大神-ligertree 求大神帮忙解答

问题描述 ligertree 求大神帮忙解答 怎样让ligertree子节点如图片中一样只在点击黑框部分时才可有反应? 解决方案 {求大神帮忙!!!!!!} 解决方案二: 那你要改源代码了,他那个直接点击li容器也会增加选中样式 修改ligeruiV1.2.5SourcelibligerUIjsplugins里面的ligerTree.js, g.tree.click(function (e)这个事件里面,大概在1083这行增加一句判断是点击了文字才执行添加选中样式 if (!$(obj).has

matrix-C++类中包含数组,如何重载运算符,第一次进入,还没有c币,求大神帮忙了,感激不尽

问题描述 C++类中包含数组,如何重载运算符,第一次进入,还没有c币,求大神帮忙了,感激不尽 这是头文件 #include #ifndef MATRIX_H_ #define MATRIX_H_ class matrix { private: double a[20][20]; int m,n; public: matrix(); matrix(const matrix&a); ~matrix(); matrix operator=(const matrix&a); friend void

一个ajax最简单的问题困扰了好久啊,求大神帮忙看看,后台是vb.net的

问题描述 一个ajax最简单的问题困扰了好久啊,求大神帮忙看看,后台是vb.net的 前台的ajax是这样的: <script type="text/javascript"> $(function () { $("#button1").click(function () { $.ajax({ type: "post", url: "ajax.aspx/ajaxtext", dataType: "text&