Here you can find the source of lpad(String input, int length)
Parameter | Description |
---|---|
input | the String to pad |
length | length of resulting string |
public static String lpad(String input, int length)
//package com.java2s; /*//from w w w .ja v a2s . c o m * ==================================================================== * JAFFA - Java Application Framework For All * * Copyright (C) 2002 JAFFA Development Group * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library 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 * Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public * License along with this library; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * * Redistribution and use of this software and associated documentation ("Software"), * with or without modification, are permitted provided that the following conditions are met: * 1. Redistributions of source code must retain copyright statements and notices. * Redistributions must also contain a copy of this document. * 2. Redistributions in binary form must reproduce the above copyright notice, * this list of conditions and the following disclaimer in the documentation * and/or other materials provided with the distribution. * 3. The name "JAFFA" must not be used to endorse or promote products derived from * this Software without prior written permission. For written permission, * please contact mail to: jaffagroup@yahoo.com. * 4. Products derived from this Software may not be called "JAFFA" nor may "JAFFA" * appear in their names without prior written permission. * 5. Due credit should be given to the JAFFA Project (http://jaffa.sourceforge.net). * * THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESSED OR IMPLIED * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE * DISCLAIMED. IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * ==================================================================== */ public class Main { /** * Left Pads the input String with spaces to take up a specified length * NOTE: The input will be truncated if it exceeds the specified length. * @param input the String to pad * @param length length of resulting string * @return string representation of the input string padded to specified length. */ public static String lpad(String input, int length) { return lpad(input, length, ' '); } /** * Left Pads the input String to take up a specified length * NOTE: The input will be truncated if it exceeds the specified length. * @param input the String to pad * @param length length of resulting string * @param padChar Character to be used for Padding * @return string representation of the input string padded to specified length. */ public static String lpad(String input, int length, char padChar) { return pad(input, length, padChar, false); } /** * Left Pads a number with zeros to take up at least 2 characters * @param number the number to pad * @return string representation of number padded to 2 characters */ public static String pad(int number) { return pad(number, 2); } /** * Left Pads a number with zeros to take up a specified length * NOTE: The input will be truncated if it exceeds the specified length. * @param number the number to pad * @param length length of resulting string * @return string representation of number padded to specified length */ public static String pad(int number, int length) { return pad(number, length, '0'); } /** * Left Pads a number to take up a specified length * NOTE: The input will be truncated if it exceeds the specified length. * @param number the number to pad * @param length length of resulting string * @param padChar Character to be used for Padding * @return string representation of number padded to specified length */ public static String pad(int number, int length, char padChar) { return lpad(String.valueOf(number), length, padChar); } /** * Pads a String to take up a specified length * NOTE: The input will be truncated if it exceeds the specified length. * @param input the String to pad * @param length length of resulting string * @param padChar Character to be used for Padding * @param rpad If true, then characters will be padded to the end of the input string. Else they'll be added before the input string. * @return string representation of the input padded to specified length */ public static String pad(String input, int length, char padChar, boolean rpad) { // Create a buffer with an initial capacity set StringBuffer buf = new StringBuffer(length); // Determine the number of characters to be padded int padCount = length - (input != null ? input.length() : 0); // Start with the input, if we are rpad-ing if (rpad && input != null) buf.append(input); // Append with the pad characters for (int i = 0; i < padCount; i++) buf.append(padChar); // End with the input, if we are lpad-ing if (!rpad && input != null) buf.append(input); return buf.length() > length ? buf.substring(0, length) : buf.toString(); } }