Java IP工具类_JAVA_编程开发_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 编程开发 > JAVA > Java IP工具类

Java IP工具类

 2015/1/1 1:09:38  wurui8  程序员俱乐部  我要评论(0)
  • 摘要:packagecom.haohaosh.common.util.ip;importjava.io.UnsupportedEncodingException;importjava.util.StringTokenizer;/****@项目名ssh*@功能IP工具类*@类名Util*@作者javalearns.com*@日期Aug30,20113:01:10PM*@版本1.0*/publicclassUtil
  • 标签:工具 Java
package com.haohaosh.common.util.ip;

import java.io.UnsupportedEncodingException;
import java.util.StringTokenizer;


/**
*
* @项目名 ssh
* @功能 IP工具类
* @类名 Util
* @作者 javalearns.com
* @日期 Aug 30, 20113:01:10 PM
* @版本 1.0
*/
public class Util {

private static StringBuilder sb = new StringBuilder();

/**
  * 从ip的字符串形式得到字节数组形式
  *
  * @param ip
  *            字符串形式的ip
  * @return 字节数组形式的ip
  */
public static byte[] getIpByteArrayFromString(String ip) {
  byte[] ret = new byte[4];
  StringTokenizer st = new StringTokenizer(ip, ".");
  try {
   ret[0] = (byte) (Integer.parseInt(st.nextToken()) & 0xFF);
   ret[1] = (byte) (Integer.parseInt(st.nextToken()) & 0xFF);
   ret[2] = (byte) (Integer.parseInt(st.nextToken()) & 0xFF);
   ret[3] = (byte) (Integer.parseInt(st.nextToken()) & 0xFF);
  } catch (Exception e) {
   System.out.println("从ip的字符串形式得到字节数组形式报错");
  }
  return ret;
}

/**
  * @param ip
  *            ip的字节数组形式
  * @return 字符串形式的ip
  */
public static String getIpStringFromBytes(byte[] ip) {
  sb.delete(0, sb.length());
  sb.append(ip[0] & 0xFF);
  sb.append('.');
  sb.append(ip[1] & 0xFF);
  sb.append('.');
  sb.append(ip[2] & 0xFF);
  sb.append('.');
  sb.append(ip[3] & 0xFF);
  return sb.toString();
}

/**
  * 根据某种编码方式将字节数组转换成字符串
  *
  * @param b
  *            字节数组
  * @param offset
  *            要转换的起始位置
  * @param len
  *            要转换的长度
  * @param encoding
  *            编码方式
  * @return 如果encoding不支持,返回一个缺省编码的字符串
  */
public static String getString(byte[] b, int offset, int len,
   String encoding) {
  try {
   return new String(b, offset, len, encoding);
  } catch (UnsupportedEncodingException e) {
   return new String(b, offset, len);
  }
}
}
转载自 http://www.javalearns.com/Html/?1193.html
上一篇: Java中,对多线程访问同一变量(并发访问)的认识 下一篇: 没有下一篇了!
发表评论
用户名: 匿名