日期:2014-05-18  浏览次数:20475 次

大家进来帮忙解释段代码!!谢谢!
private void SchoolFlagUrl() 
  { 
  schoolid = Hxzp.CommonFile.StringHelper.ConvertHexToString(Request.QueryString["SchoolID"].ToString()); 
  string[] sArray = schoolid.Split('&'); 
  schoolpicture = bll.byIdSchoolFlag(int.Parse(sArray[0].ToString())); 
  schoolpicture = Hxzp.CommonFile.SetAll.setimgurl(schoolpicture).ToString(); 
  } 

1.这个里面将十六进制转换成字符的。那转换成字符schoolid,里面有"&"这个东西吗?为什么要去掉?
2.schoolpicture = bll.byIdSchoolFlag(int.Parse(sArray[0].ToString())); 
这里面的 int.Parse(sArray[0]. 是什么意思?? 
3.schoolid.Split('&'); 这个为什么返回的是数组?
说的好,有加分.谢谢啊!!

------解决方案--------------------
String.Split 方法

C# code
public string[] Split(params char[] separator)

------解决方案--------------------
C# code

 private void SchoolFlagUrl() 
    { 
        //将十六进制转换成字符。里面有没有&要看你传的值是什么了
        schoolid = Hxzp.CommonFile.StringHelper.ConvertHexToString(Request.QueryString["SchoolID"].ToString()); 
        //Split是分割,把字符串按&这个字符分割,得到一个字符串数组
        string[] sArray = schoolid.Split('&'); 
        //sArray[0]是数组的第一个元素,int.Parse()将其转换成int类型
        schoolpicture = bll.byIdSchoolFlag(int.Parse(sArray[0].ToString())); 
        schoolpicture = Hxzp.CommonFile.SetAll.setimgurl(schoolpicture).ToString(); 
    }

------解决方案--------------------
int.Parse(sArray[0].ToString()) 是把&分隔的第一个数解析为整型。 实际上.ToString()是多余的,因为sArray[0]本身就是string了。
------解决方案--------------------
探讨
C# code
private void SchoolFlagUrl()
{
//将十六进制转换成字符。里面有没有&要看你传的值是什么了
schoolid = Hxzp.CommonFile.StringHelper.ConvertHexToString(Request.QueryString["SchoolID"].ToString());
//Split是分割,把字符串按&这个字符分割,得到一个字符串数组
string[] sArray = schoolid.Split('&');
//sArray[0]是数组的第一个元素,int.Parse()将其…

------解决方案--------------------
支持2楼
------解决方案--------------------
schoolid.Split 是以 & 符号作为分隔符将字符串分成数组

int.Parse(sArray[0])是将字符串转换成整型