Java中的PHP包()和hex2bin

时间:2015-11-01 09:19:31

标签: java php

我正在尝试将函数从PHP转换为java。但是,我无法找到方法或解决方法来实现我想要的结果。有人可以帮我解决这个问题:

function adjustId($id)
{
  $data = strrev(pack("L",$id));
  $data = bin2hex(ltrim($data));
  while(strlen($data) < 6)
    $data = "0".$data;
  return hex2bin($data);
}

编辑:

strrev()相当于java中的reverse(),

pack("L",)表示无符号长整数(总是32位,机器字节顺序)&#39;,因此Java应根据这些格式返回二进制字符串。

Bin2Hex只是将二进制字符串转换为十六进制。

ltrim()从字符串

中删除空格

strlen()是字符串的长度。

EDIT2:

该方法现在看起来像这样:

    public byte[] adjustId(String id)
{
  String data;
  data = strrev(pack("L", id));
  data = BinHex.bin2hex(data.replaceAll("^\\s+","").getBytes());
  while(data.length() < 6) {
    data = "0" + data;
  }
  return BinHex.hex2bin(data);
}

BinHex是hex2bin问题的单独类。剩下的唯一问题是pack()功能。如果有人能解决这个问题,我将不胜感激。

0 个答案:

没有答案