您的位置:首页 > 职场人生

为了未来的求职,大学生需要准备什么?

2007-11-13 16:56 1091 查看
/** 校验Ip格式 这是模仿js校验ip格式,使用java做的判断
* @param str
* @return
*/
publicboolean checkIp(String str)
{
String[] ipValue = str.split("\\.");
if (ipValue.length != 4)
{
returnfalse;
}
for (int i = 0; i < ipValue.length; i++)
{
String temp = ipValue[i];
try
{
// java判断字串是否整数可以用此类型转换异常捕获方法,也可以用正则 var regu = /^\d+$/;
Integer q = Integer.valueOf(ipValue[i]);
if (q > 255)
{
returnfalse;
}
}
catch (Exception e)
{
returnfalse;
}
}
returntrue;
}

/** 校验Ip地址是否合法
* @param addr
* @return
*/
publicstaticboolean isIpValid(String addr)
{
String[] ipStr = new String[4];
int[] ipb = newint[4];
StringTokenizer tokenizer = new StringTokenizer(addr, ".");
int len = tokenizer.countTokens();

if (len != 4)
{
returnfalse;
}
try
{
int i = 0;
while (tokenizer.hasMoreTokens())
{
ipStr[i] = tokenizer.nextToken();
ipb[i] = (new Integer(ipStr[i])).intValue();

if (ipb[i] < 0 || ipb[i] > 255)
{
returnfalse;
}
i++;
}
if (ipb[0] > 0)
{
returntrue;
}
}
catch (Exception e)
{

}
returnfalse;
}

/** 将byte[4] 数组转换成int 型
* @param b
* @param len
* @return
*/
publicstaticint byteToInt(byte[] b, int len)
{
finalint LOWBYTE = 0x000000ff;
int i;
if (len < 1 || len > 4)
{
len = 4;
}
int[] temp = newint[len];
for (i = 0; i < len; i++)
{
temp[i] = (int) b[i];
temp[i] &= LOWBYTE;
temp[i] <<= ((len - 1 - i) * 8);
}
for (i = 1; i < len; i++)
{
temp[0] |= temp[i];
}
return temp[0];
}

/** 将ip地址从String转换成Int型
* @param addr
* @return
*/
publicstaticint covtAddrToInt(String addr)
{
try
{
InetAddress ip = InetAddress.getByName(addr);
byte[] ipb = newbyte[4];
ipb = ip.getAddress();
int tIp = byteToInt(ipb, 4);
return tIp;
}
catch (java.net.UnknownHostException e)
{
return 0;
}
}
/** 将ip地址从int型转换成String
* @param ip
* @return
*/
publicstatic String covtAddrToStr(int ip)
{
if (ip == 0)
{
returnnew String("0.0.0.0");
}
long newIp;
if (ip < 0)
{
newIp = ((long) 256) * ((long) 256) * ((long) 256) * ((long) 256);
newIp = newIp + ip;
}
else
{
newIp = (long) ip;
}
long yushu = newIp % 256;
newIp = newIp / 256;
String tmpIp = Long.toString(yushu);
for (int i = 0; i < 3; i++)
{
yushu = newIp % 256;
newIp = newIp / 256;
tmpIp = Long.toString(yushu) + "." + tmpIp;

}
return tmpIp;
}

/**
* 优化输入的Ip值,如将"01.02.03.04"转化为"1.2.3.4";
* 注:此方法仅提供优化,不提供校验,请使用合法的Ip格式字串调用
*
* @param oldIpStr 将被优化的ip值
* 必须确保传过来的Ip值已经符合Ip格式规范
* @return 返回转化后的Ip值
*/
public String suitableIp(String oldIpStr)
{
String newIp = "";
// 分离为数组
String[] tmpStr = oldIpStr.split("\\.");
for (int i = 0; i < tmpStr.length; i++)
{
newIp += Integer.valueOf(tmpStr[i]);

if (i < tmpStr.length - 1)
{
newIp += ".";
}
}
return newIp;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: