I have a chunk of code to do this, hope it helps:


public class IPAddress {
/** Holds value of property ip. */
protected int address;
/** Creates new IP */
public IPAddress(String ip) throws MalformedIPException{
this.set(ip);
}
/** Getter for property ip.
* @return Value of property ip.
*/
public int get(){
return address;
}
/** Setter for property ip.
* @param ip New value of property ip.
*/
public void set(String ip) throws MalformedIPException{


if( ip == null) ip = "255.255.255.255";
int IP = 0x00;
int hitDots = 0;
char[] data = ip.toCharArray();


       for(int i = 0; i < data.length; i++) {
       char c = data[i];
       if (c < 48 || c > 57) { // !digit
           throw new MalformedIPException("IP Contains Non-digit");
       }
       int b = 0x00;
       while(c != '.') {
           if (c < 48 || c > 57) { // !digit
           throw new MalformedIPException("IP Contains Non-digit");
           }
           b = b*10 + c - '0';

           if (++i >= data.length)
           break;
           c = data[i];
       }
       if(b > 0xFF) { /* bogus - bigger than a byte */
           throw new MalformedIPException("Value is larger than a byte");
       }
       IP = (IP << 8) + b;
       hitDots++;
       }

       if(hitDots != 4 || ip.endsWith(".")) {
       throw new MalformedIPException("Not properly formated IP address");
       }

address = IP; }
public String toString(){
return ((address >>> 24) & 0xFF) + "." +
((address >>> 16) & 0xFF) + "." +
((address >>> 8) & 0xFF) + "." +
((address >>> 0) & 0xFF);
}
public boolean contains(Object obj) {
if (obj == null) return false;
if (obj instanceof IPAddress) return (((IPAddress)obj).address == address);
return false;
}


/**
* Returns a hashcode for this IP address.
*
* @return a hash code value for this IP address.
*/
public int hashCode() {
return address;
}
}



Michael McGrady wrote:

At 01:49 AM 8/11/2004, you wrote:

check the standard java package java.net, class InetAddress etc...
peter



I have not checked what the result is, but I do know that InetAddress overides hashcode() in Object.





--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]



--
Mark R. Diggory
Software Developer
Harvard MIT Data Center
http://www.hmdc.harvard.edu


--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]



Reply via email to