| /* NFCard is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by
 the Free Software Foundation; either version 3 of the License, or
 (at your option) any later version.
 
 NFCard is distributed in the hope that it will be useful,
 but WITHOUT ANY WARRANTY; without even the implied warranty of
 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 GNU General Public License for more details.
 
 Additional permission under GNU GPL version 3 section 7 */
 
 package com.sinpo.xnfc;
 
 public final class Util {
 private final static char[] HEX = { '0', '1', '2', '3', '4', '5', '6', '7',
 '8', '9', 'A', 'B', 'C', 'D', 'E', 'F' };
 
 private Util() {
 }
 
 public static byte[] toBytes(int a) {
 return new byte[] { (byte) (0x000000ff & (a >>> 24)),
 (byte) (0x000000ff & (a >>> 16)),
 (byte) (0x000000ff & (a >>> 8)), (byte) (0x000000ff & (a)) };
 }
 
 public static int toInt(byte[] b, int s, int n) {
 int ret = 0;
 
 final int e = s + n;
 for (int i = s; i < e; ++i) {
 ret <<= 8;
 ret |= b[i] & 0xFF;
 }
 return ret;
 }
 
 public static String toHexStringR(byte[] d, int s, int n) {
 final char[] ret = new char[n * 2];
 
 int x = 0;
 for (int i = s + n - 1; i >= s; --i) {
 final byte v = d[i];
 ret[x++] = HEX[0x0F & (v >> 4)];
 ret[x++] = HEX[0x0F & v];
 }
 return new String(ret);
 }
 
 }
 
 
 |