George World

          技術改變明天,創新塑造未來! i(at)huadev.com Follow Me: http://t.sina.com.cn/georgeworld

            BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
            28 隨筆 :: 0 文章 :: 5 評論 :: 0 Trackbacks

          /*
          * To change this template, choose Tools | Templates
          * and open the template in the editor.
          */
          package test.util;

          /**
          *
          * @author Administrator
          */
          public class StringUtil {

              public StringUtil() {
              }

              /**
               * 將指定byte數組以16進制的形式打印到控制臺
               * @param hint String
               * @param b byte[]
               * @return void
               */
              public static String printHexString( byte[] b) {
                  StringBuffer returnValue = new StringBuffer();
                  for (int i = 0; i < b.length; i++) {
                      String hex = Integer.toHexString(b[i] & 0xFF);
                      if (hex.length() == 1) {
                          hex = '0' + hex;
                      }
                      System.out.print(hex.toUpperCase() + " ");
                      returnValue.append(hex.toUpperCase() + " ");
                  }

                  return "[" + returnValue.toString() + "]";
              }

              /**
               *
               * @param b byte[]
               * @return String
               */
              public static String Bytes2HexString(byte[] b) {
                  String ret = "";
                  for (int i = 0; i < b.length; i++) {
                      String hex = Integer.toHexString(b[i] & 0xFF);
                      if (hex.length() == 1) {
                          hex = '0' + hex;
                      }
                      ret += hex.toUpperCase();
                  }
                  return ret;
              }

              /**
               * 將兩個ASCII字符合成一個字節;
               * 如:"EF"--> 0xEF
               * @param src0 byte
               * @param src1 byte
               * @return byte
               */
              public static byte uniteBytes(byte src0, byte src1) {
                  byte _b0 = Byte.decode("0x" + new String(new byte[]{src0})).byteValue();
                  _b0 = (byte) (_b0 << 4);
                  byte _b1 = Byte.decode("0x" + new String(new byte[]{src1})).byteValue();
                  byte ret = (byte) (_b0 ^ _b1);
                  return ret;
              }

              /**
               * 將指定字符串src,以每兩個字符分割轉換為16進制形式
               * 如:"2B44EFD9" --> byte[]{0x2B, 0x44, 0xEF, 0xD9}
               * @param src String
               * @return byte[]
               */
              public static byte[] HexString2Bytes(String src) {
                  byte[] ret = new byte[8];
                  byte[] tmp = src.getBytes();
                  for (int i = 0; i < 8; i++) {
                      ret[i] = uniteBytes(tmp[i * 2], tmp[i * 2 + 1]);
                  }
                  return ret;
              }
          }

          posted on 2010-03-02 11:04 George-tech 閱讀(478) 評論(0)  編輯  收藏 所屬分類: java.complex

          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          主站蜘蛛池模板: 炉霍县| 英山县| 尖扎县| 麻阳| 怀化市| 乾安县| 柘城县| 开鲁县| 塔城市| 阜康市| 镇安县| 汉沽区| 临邑县| 和田县| 宣恩县| 江北区| 虹口区| 香格里拉县| 涡阳县| 卢湾区| 北票市| 沁阳市| 广宁县| 封丘县| 连州市| 平武县| 德清县| 内丘县| 长寿区| 闸北区| 体育| 陆良县| 都匀市| 仪征市| 兰溪市| 新建县| 喀什市| 漠河县| 弥渡县| 永靖县| 大足县|