如何把这VB代码转为C#?

gzhoney 2006-11-27 11:17:27
如何把这VB代码转为C#?


Public Function Encode(ByVal S As String) As String
On Error GoTo acd
If Len(S) = 0 Then Exit Function
Dim Buff() As Byte
Buff = StrConv(S, vbFromUnicode)
Dim i As Long
Dim j As Byte
Dim k As Byte, m As Byte
Dim mstr As String
mstr = "ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnopqrstuvwxyz"
Dim outs As String
i = UBound(Buff) + 1
outs = Space(2 * i)
Dim Temps As String
For i = 0 To UBound(Buff)
Randomize Time
j = CByte(5 * (Math.Rnd()) + 0) '最大产生的随机数只能是5,不能再大了,再大的话,就要多用一个字节
Buff(i) = Buff(i) Xor j
k = Buff(i) Mod Len(mstr)
m = Buff(i) \ Len(mstr)
m = m * 2 ^ 3 + j
Temps = Mid(mstr, k + 1, 1) + Mid(mstr, m + 1, 1)
Mid(outs, 2 * i + 1, 2) = Temps
Next
Encode = outs
Exit Function
acd:
End Function

Public Function Decode(ByVal S As String) As String
On Error GoTo acd
Dim i As Long
Dim j As Byte
Dim k As Byte
Dim m As Byte
Dim mstr As String
mstr = "ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnopqrstuvwxyz"
Dim t1 As String, t2 As String
Dim Buff() As Byte
Dim n As Long
n = 0
For i = 1 To Len(S) Step 2
t1 = Mid(S, i, 1)
t2 = Mid(S, i + 1, 1)
k = InStr(1, mstr, t1) - 1
m = InStr(1, mstr, t2) - 1
j = m \ 2 ^ 3
m = m - j * 2 ^ 3
ReDim Preserve Buff(n)
Buff(n) = j * Len(mstr) + k
Buff(n) = Buff(n) Xor m
n = n + 1
Next
Decode = StrConv(Buff, vbUnicode)
Exit Function
acd:
Decode = ""
End Function

谢了


...全文
364 17 打赏 收藏 转发到动态 举报
写回复
用AI写文章
17 条回复
切换为时间正序
请发表友善的回复…
发表回复
cangwu_lee 2006-11-29
  • 打赏
  • 举报
回复
ding
marvelstack 2006-11-29
  • 打赏
  • 举报
回复
C#-VB语言转换插件
http://www.kamalpatel.net/convertcsharp2vb.aspx
http://www.carlosag.net/tools/codetranslator/default.aspx
princexu1999 2006-11-28
  • 打赏
  • 举报
回复
你这是生成密码和破译密码的程序么?
chenzuo 2006-11-28
  • 打赏
  • 举报
回复
有专门的转换网站,有点忘了,可以搜一下.
kyle315 2006-11-28
  • 打赏
  • 举报
回复
唉,不是别人不厚道,你的分数和你的长的不成比例,太长了.....
qfknet 2006-11-28
  • 打赏
  • 举报
回复
留个名,没事时看看,以前做VB的,现在正学C#,正好拿来练练手
yumanqing 2006-11-28
  • 打赏
  • 举报
回复
MSDN上的DES,MD5,RC2加密方法都可以,搜一下有源码的。
gzhoney 2006-11-28
  • 打赏
  • 举报
回复
晕啊,那高手们有没有VB,C#通用的加密解密代码?
即用VB调用加密代码加密后能用C#代码解密,当然,用VB解密也可以。

即通用的

有吗???????
viena 2006-11-28
  • 打赏
  • 举报
回复
而且你这里面用了很多VB特有的东西,很难转为C#的~
viena 2006-11-28
  • 打赏
  • 举报
回复
整个转比较费劲
不如你自己试着转
碰到问题或那里不会了再来问
viena 2006-11-28
  • 打赏
  • 举报
回复
我教你一个方法
先编译,然后用Reflector反编译为C#
gzhoney 2006-11-28
  • 打赏
  • 举报
回复
不知如何加分,如能帮偶解决,偶另开贴给100分,更多也可以。
gzhoney 2006-11-28
  • 打赏
  • 举报
回复
不好意思,我只急着解决问题,没在意分数,现在加分,加到我最大能给分。
lowtemper 2006-11-28
  • 打赏
  • 举报
回复
http://www.developerfusion.co.uk/utilities/convertvbtocsharp.aspx
q
gzhoney 2006-11-27
  • 打赏
  • 举报
回复
晕啊。。。

各位老大,偶是用VB的,突然要用一下C#,唉,摸不着头啊
cpp2017 2006-11-27
  • 打赏
  • 举报
回复
是啊,太长了,累。纯粹是体力活,这不符合论坛的宗旨
tianzhenjing 2006-11-27
  • 打赏
  • 举报
回复
太长。。。

熟悉一下C#基本知识,自己搞吧

110,539

社区成员

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

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

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