Java tutorial
//package com.java2s; /* * Copyright (C) 2016 Jared Rummler <jared.rummler@gmail.com> * * Licensed 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 { /** * Format character for debugging output, which it is prefixed with "0x", padded left with '0' * and either 4 or 6 hex characters in width according to whether it is in the BMP or not. * * @param c * character code * @return formatted character string */ public static String format(int c) { if (c < 1114112) { return "0x" + padLeft(Integer.toString(c, 16), (c < 65536) ? 4 : 6, '0'); } else { return "!NOT A CHARACTER!"; } } /** * Pad a string S on left out to width W using padding character PAD. * * @param s * string to pad * @param width * width of field to add padding * @param pad * character to use for padding * @return padded string */ public static String padLeft(String s, int width, char pad) { StringBuffer sb = new StringBuffer(); for (int i = s.length(); i < width; i++) { sb.append(pad); } sb.append(s); return sb.toString(); } }