如何將以下vb語句轉化為c#語句?帮帮忙,实在没分了
vb語句:
For i = 1 To vstrIn.Length
ThisChr = Mid(vstrIn, i, 1)
If Abs(Asc(ThisChr)) < &HFF Then
strReturn = strReturn & ThisChr
Else
innerCode = Asc(ThisChr)
If innerCode < 0 Then
innerCode = innerCode + &H10000
End If
Hight8 = (innerCode And &HFF00) \ &HFF
Low8 = innerCode And &HFF
strReturn = strReturn & "%" & Hex(Hight8) & "%" & Hex(Low8)
End If
Next
问题点数:0、回复次数:9Top
1 楼ilonliu(ilonliu)回复于 2004-09-04 13:00:30 得分 0
在线等待,急呀!Top
2 楼webserv2(New life New job)回复于 2004-09-04 13:36:19 得分 0
把vb代码转换成C# :
http://www.developerfusion.com/utilities/convertvbtocsharp.aspx
把C#代码转换成VB :
http://www.developerfusion.com/utilities/convertcsharptovb.aspx
Top
3 楼ilonliu(ilonliu)回复于 2004-09-04 14:09:32 得分 0
謝webserv2(GIS)(CAU):基本上可以但Asc()還是不行;另外Abs()在c#中是如何引用?Top
4 楼lexchou(龍子龍孫)(本人已死)(有事烧纸)回复于 2004-09-04 14:17:10 得分 0
for(i=0;i<vstrIn.Length;i++)
{
ThisChr=vstrIn[i];
if(Math.Abs((int)ThisChr)<0xFF)
{
strReturn+=ThisChr;
}
else
{
innerCode=(int)ThisChr;
if(innerCode<0)
{
innerCode+=0x10000;
}//if
High8=(innerCode>>8) & 0xFF;
Low8=innerCode & 0xFF;
strReturn +=String.Format("%{0}%{1}",(char)Hight8,(char)Low8);
}//if
}//for
不是直译的。按意思翻译的。未测试Top
5 楼moeryang(侵晨的烟火)回复于 2004-09-04 14:26:37 得分 0
Asc 函数 返回与字符串的第一个字母对应的 ANSI 字符代码。
Dim MyNumber
MyNumber = Asc("A") '返回 65。
MyNumber = Asc("a") '返回 97。
MyNumber = Asc("Apple") '返回 65。
可以用
Convert.ToInt16('a')
替换Top
6 楼ilonliu(ilonliu)回复于 2004-09-04 15:18:54 得分 0
謝 moeryang(黑马啸啸):那Hex()函數用c#怎麼寫?Top
7 楼ilonliu(ilonliu)回复于 2004-09-04 15:25:40 得分 0
moeryang(黑马啸啸):Convert.ToInt16('a')這樣會錯呀?Top
8 楼ilonliu(ilonliu)回复于 2004-09-04 15:36:47 得分 0
moeryang(黑马啸啸):sorry,我把它寫成Convert.ToInt16("a")了。
最後一個問題,就是Hex()函數用c#怎麼寫?謝了!!!!!!Top
9 楼ArLi2003(阿利,MSN:url@163.com)回复于 2004-09-04 16:37:17 得分 0
http://community.csdn.net/Expert/TopicView.asp?id=3248608Top




