我哭啊,哪位大神帮我翻译一句VB的代码到C# ?

wuhuanghao 2014-03-01 07:22:44

Dim i, s
for i = 1 to Len(str)
s = s & (asc(mid(str, i, 1)) xor key) & ","
next
'----------
Dim t
t = (DateDiff("s", #1/1/1970#, Now) * 1000) / 100
s = s & t
'----------
s = s & key & m
'----------




x = Split(str, ",")
m = Right(x(Ubound(x)), 1)
key = Mid(x(Ubound(x)), len(x(Ubound(x)))-3+1, 2)
'Wscript.Echo "M = " & m
'Wscript.Echo "Key = " & key
'----------
Dim i, s
for i = lbound(x) to (ubound(x) - 1)
s = s & Chr(Int(x(i)) xor key)
next


这两段代码翻译成C#的代码,应该怎么写?
...全文
173 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
wuhuanghao 2014-03-02
  • 打赏
  • 举报
回复
s += (str.SubString(i - 1, 1) [0] ^ key).ToString() + ",";

提示:索引和长度必须引用该字符串内的位置!
wind_cloud2011 2014-03-02
  • 打赏
  • 举报
回复
就是数组与字符的处理, 由于不知道你str的内容,转换上可能不对,大概这样 string Str = null; string m = null; Int64 key ; string s = ""; Str = "1234,2346,3668,6789,1345,1267"; string[] x = null; x = Str.Split(','); string L =x[x.GetUpperBound(0)]; m = L.Substring(L.Length - 1, 1); key =Convert.ToInt64(L.Substring(L.Length - 3 + 1, 2)); for (int i =x.GetLowerBound(0); i <= x.GetUpperBound(0)-1 ; i++) { s+=Convert.ToChar(Convert.ToInt64(x[i]) ^ key); }
wind_cloud2011 2014-03-02
  • 打赏
  • 举报
回复
用这个网站可以实现代码转换:http://www.developerfusion.com/tools/convert/vb-to-csharp/
wuhuanghao 2014-03-02
  • 打赏
  • 举报
回复
手误,发现i打成了1
wuhuanghao 2014-03-02
  • 打赏
  • 举报
回复
大神,第二段也帮我翻译一下吧!
Regan-lin 2014-03-02
  • 打赏
  • 举报
回复
引用 2 楼 wuhuanghao 的回复:
s += (str.SubString(i - 1, 1) [0] ^ key).ToString() + ","; 提示:索引和长度必须引用该字符串内的位置!
少了个.?.[0]?
threenewbee 2014-03-01
  • 打赏
  • 举报
回复
int i = 0; string s = ""; for (i = 1; i <= str.Length; i++) s += (str.SubString(i - 1, 1)[0] ^ key).ToString() + ","; DateTime t = new TimeSpan(DateTime.Now.Tick, new DateTime(1970, 1, 1).Tick).TotalSeconds * 10; s += t.ToString(); s += key + m;

110,533

社区成员

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

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

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