java处理中文格式化问题

package com.string.test;


public class StringUtil {
	
		
	/**   
     * @param originalString source string  
     * @param formatLength output string length   
     * @return String   
     * @author alex.wang   
     * @Date 2010-05-28  
     */    
    public static String splitString(String originalString,int formatLength) {      
    	if ( null == originalString ) {
    		return "";      
    	}      
    	
    	byte[] strByte = originalString.getBytes();      
    	int strLen = strByte.length;      
    	int count = 0;
    	
    	if ( formatLength <= 0) {
    		return "";
    	}
    	
    	if ( formatLength >= strLen ) {      
    		return originalString;      
    	}      
    	
    	for ( int i = 0; i < formatLength; i++) {      
    		int value = (int) strByte[i];       
    		if ( value < 0) {      
    			count++;
    		}
    	}      
    	
    	if ( count % 2 != 0 ) {      
    		formatLength = (formatLength == 1) ? formatLength + 1 : formatLength - 1;      
    	}      
    	
    	return new String(strByte, 0, formatLength);
     }    
    
public static String rightPadInvoiceString(String originalString, int formatLength, String padString) {
		if ( null == originalString ) {
			originalString = "";
		}
		
		originalString = originalString.replaceAll("\r", "");
		originalString = originalString.replaceAll("\n", "");
		
		String splitString = splitString(originalString,formatLength);
		StringBuffer newStringBuf = new StringBuffer(splitString);
		byte[] strByte = splitString.getBytes();      
		int strLen = strByte.length;
		int stepLength = formatLength - strLen;
		if ( stepLength > 0 ) {
			for ( int i = 0; i < stepLength; i++ ) {
				newStringBuf.append(padString);
			}
		}
		
		return newStringBuf.toString();
	}

public static void main(String[] arg) throws IOException {
				String s = "aaas学位nhss位英语专区 学s位英语专区 学位英语专区"; ;

		System.out.println(SettlementUtil.rightPadInvoiceString(s, 13, " "));
		

	}
}

你可能感兴趣的:(java)