Here you can find the source of fromHex(char hi, char lo)
public static byte fromHex(char hi, char lo) throws NumberFormatException
//package com.java2s; /*/*ww w . j a v a2s .c o m*/ * Licensed to the Apache Software Foundation (ASF) under one * or more contributor license agreements. See the NOTICE file * distributed with this work for additional information * regarding copyright ownership. The ASF licenses this file * to you under the Apache License, Version 2.0 (the * "License"); you may not use this file except in compliance * with the License. You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, * software distributed under the License is distributed on an * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY * KIND, either express or implied. See the License for the * specific language governing permissions and limitations * under the License. */ public class Main { public static final String HEX_DIGITS = "0123456789abcdef"; public static byte fromHex(char hi, char lo) throws NumberFormatException { int hiValue = HEX_DIGITS.indexOf(((hi >= 'A') && (hi <= 'F')) ? ('a' + (hi - 'A')) : hi); int loValue = HEX_DIGITS.indexOf(((lo >= 'A') && (lo <= 'F')) ? ('a' + (lo - 'A')) : lo); if ((hiValue < 0) || (loValue < 0)) { throw new NumberFormatException( "fromHex(" + new String(new char[] { hi, lo }) + ") non-HEX characters"); } return (byte) ((hiValue << 4) + loValue); } }