All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.venky.core.string.StringUtil Maven / Gradle / Ivy

/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package com.venky.core.string;

import java.io.BufferedReader;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.Reader;
import java.util.Properties;
import java.util.Stack;

/**
 *
 * @author venky
 */
public class StringUtil {
	public static String join(String...array) {
		return join(',',array);
	}
	public static String join(char separator, String... array) {
		StringBuilder b = new StringBuilder();
		for (String v:array) { 
			if (b.length() > 0) {
				b.append(separator);
			}
			b.append(v);
		}
		return b.toString();
	}
	
    public static boolean equals(String s1, String s2){
        if (s1 == null){
            return s2 == null; 
        }else {
            return valueOf(s1).equals(valueOf(s2));
        }
    }
    public static String valueOf(Object o){ 
    	return String.valueOf(o == null? "" : o).trim();
    }
    public static String camelize(String underscorizedString) {
        return camelize(underscorizedString,true);
    }
    public static String camelize(String underscorizedString,boolean capitalizeFirstChar) {
        return Inflector.camelize(underscorizedString,capitalizeFirstChar);
    }
    
    public static String underscorize(String camel){
        return Inflector.underscore(camel);
    }
    
    public static String pluralize(String singular){
        return Inflector.pluralize(singular);
    }
    public static String singularize(String plural){
        return Inflector.singularize(plural);
    }
    public static String read(InputStream in){
    	return read(in,true);
    }
    public static String read(InputStream in,boolean close){
    	return read(new BufferedReader(new InputStreamReader(in)), close);
    	
    }
    public static String read(Reader in){
    	return read(in,true);
    }
    public static String read(Reader reader, boolean close){
		 BufferedReader r = new BufferedReader(reader);
		 StringBuilder builder = new StringBuilder();
		 char[] buffer = new char[1024];
		 try {
			 int numCharsRead = 0;
			 while ((numCharsRead = r.read(buffer)) > 0){
				 builder.append(buffer,0,numCharsRead);
			 }
		} catch (IOException e) {
			throw new RuntimeException(e);
		} finally {
			try {
				if (close){
					r.close();
				}
			}catch(IOException ex) {
				throw new RuntimeException(ex);
			}
		}
		return builder.toString();
    }
    public static byte[] readBytes(InputStream in){
    	return readBytes(in,true);
    }

    public static byte[] readBytes(InputStream in, boolean close){
    	if (in == null){
    		return new byte[]{};
    	}
    	ByteArrayOutputStream out = new ByteArrayOutputStream(1024);
    	
    	byte[] buffer = new byte[1024];
		 try {
			 int numbytesRead = 0;
			 while ((numbytesRead = in.read(buffer)) > 0){
				 out.write(buffer,0,numbytesRead);
			 }
		} catch (IOException e) {
			throw new RuntimeException(e);
		} finally {
			try {
				if (close){
					in.close();
				}
			}catch(IOException ex) {
				throw new RuntimeException(ex);
			}
		}
		return out.toByteArray();
   }
   
   
    
    public static String toWords(int number){
    	return new NumberToWordsConverter(number).toString();
    }
    
    public static String format(String template, Properties properties){
    	StringBuilder formattedString = new StringBuilder();
		char[] chars = template.toCharArray();
		Stack variables = new Stack();
		
		for (int i = 0 ; i 




© 2015 - 2024 Weber Informatics LLC | Privacy Policy