比如要得到192.168.0.1-192.168.0.254 中间所有的IPAddress列表该如何做呢?
我做了个但是结果是错误的,请大家看看~
public class IP
{
private string strStartHost,strEndHost=null;

public IP(string strStart,string strEnd)
{
this.strStartHost=strStart;
this.strStartHost=strEnd;
}
private static int ParseIPAddress(string strIPAddress)

{

try

{

IPAddress ipAddr=IPAddress.Parse(strIPAddress);
byte[] ipBytes=ipAddr.GetAddressBytes();

return (ipBytes[0]<<24)+(ipBytes[1]<<16)+(ipBytes[2]<<8)+(ipBytes[3]);

}

catch

{

return 0;

}

} public IPAddress[] GetIPAddressList()
{
long  nStartIP = ParseIPAddress(strStartHost);
long nEndIP = ParseIPAddress(strEndHost); IPAddress[] IPlist = new IPAddress[nEndIP-nStartIP+1]; int j=0; for(long i=nStartIP;i<nEndIP;nStartIP++,j++) { IPlist[j] = new IPAddress(System.Net.IPAddress.HostToNetworkOrder(i)); }
return IPlist; }
public long GetNum()
{
long nStartIP = ParseIPAddress(strStartHost);
long nEndIP = ParseIPAddress(strEndHost);
return (nEndIP-nStartIP); }
}
到底错误发生在什么地方呢?请大家指点一下。
还有另外一个小问题,怎么通过网络socket发送一个类啊,send函数的参数要求是byte[],但是类转化不成byte[]呀?两个问题麻烦大家解答下,不胜感激!
此外大家如果有兴趣的话,可以关注下这个问题,http://community.csdn.net/Expert/topic/4551/4551137.xml?temp=.684765
您的任何回复都是受欢迎的!