Here you can find the source of upperToLower(byte[] b)
public static void upperToLower(byte[] b)
//package com.java2s; public class Main { public static void upperToLower(byte[] b) { int len = b.length; if ((len & 1) == 1) { b[len - 1] = '\0'; len--;//from w w w. j a va 2 s .c om } for (int i = 0; i < len; i += 2) { int high = b[i] & 0xff; int low = b[i + 1] & 0xff; if (high == '\0' || low == '\0') { break; } else if (high == 0x23 && (low >= 0x41 && low <= 0x5a)) { b[i + 1] = (byte) (low + 0x20); } } } }