⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 stringutils.java.svn-base

📁 文件上传用例,纯sql分页源码,有用的着地方请下载 试用
💻 SVN-BASE
字号:
package org.derrick.util;

import java.io.UnsupportedEncodingException;
import java.math.BigDecimal;
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
import java.util.Arrays;

import org.apache.log4j.LogManager;
import org.apache.log4j.Logger;
/**
 * 
 * @author 刘冬宝Oct 26, 2006
   版权申明:所有人员均可自由修改源码并再发布,但必须保留此相关信息
 *
 */
public class StringUtils {
	private static Logger logger = LogManager.getLogger(StringUtils.class);

	/**
	 * 将一个浮点型数字转换成给定小数位的字符串表示。
	 * 
	 * @param input
	 *            double 浮点型数
	 * @param scale
	 *            int 小数位
	 * @return String
	 */
	static public String handleScale(double input, int scale) {
		BigDecimal bigDecimal = new BigDecimal(input);
		bigDecimal = bigDecimal.setScale(scale, BigDecimal.ROUND_HALF_EVEN);
		return handleNULL(bigDecimal.toString());
		// NumberFormat format = NumberFormat.getNumberInstance();
		// format.setMaximumFractionDigits(scale);
		// format.setGroupingUsed(false);
		// return format.format(input);

	}
	
	/**
	 * 将一个浮点型数字转换成给定小数位的字符串表示。
	 * 
	 * @param input
	 *            String 浮点型数的字符串形式
	 * @param scale
	 *            int 小数位
	 * @return String
	 */
	static public String handleScale(String input, int scale) {
		BigDecimal bigDecimal = new BigDecimal(input);
		bigDecimal = bigDecimal.setScale(scale, BigDecimal.ROUND_HALF_EVEN);
		return handleNULL(bigDecimal.toString());
		// NumberFormat format = NumberFormat.getNumberInstance();
		// format.setMaximumFractionDigits(scale);
		// format.setGroupingUsed(false);
		// return format.format(input);

	}

	static public String leadingZero(String input, int length) {
		input = handleNULL(input);
		char nils[] = new char[length - input.length()];
		Arrays.fill(nils, '0');
		input = String.valueOf(nils) + input;
		return handleNULL(input);
	}

	static public String handleNULL(String input) {
		return handleNULL(input, "");
	}

	static public String handleNULL(String input, String def) {
		if (null == input || input.trim().length() <= 0) {
			return def;
		} else {
			return input.trim();
		}
	}

	static public String encode_MD5(String inputString)
			throws NoSuchAlgorithmException {
		MessageDigest messageDigest = MessageDigest.getInstance("MD5");
		messageDigest.update(inputString.getBytes());
		byte md[] = messageDigest.digest();
		return handleNULL(byteToHex(md, true));
	}

	/**
	 * e 将字符串转换成8859_1编码格式。
	 * 
	 * @param input
	 * @return
	 * @throws java.lang.Exception
	 */
	static public String convertTo8859_1(String input)
			throws UnsupportedEncodingException {
		if (input == null) {
			return "";
		} else {
			input = input.trim();
			return new String(input.getBytes(), "8859_1");
		}
	}

	/**
	 * 将字符串从8859_1编码格式转换成GB2312编码格式。
	 * 
	 * @param input
	 * @return
	 * @throws java.lang.Exception
	 */
	static public String convert8859_1ToGB2312(String input)
			throws UnsupportedEncodingException {
		if (input == null) {
			return "";
		} else {
			input = input.trim();
			return new String(input.getBytes("8859_1"), "GB2312");
		}
	}

	/**
	 * 将字符串对象从8859_1编码格式转换成GB2312编码格式。
	 * 
	 * @param input
	 * @return
	 * @throws java.lang.Exception
	 */
	static public String convert8859_1ToGB2312(Object obj)
			throws UnsupportedEncodingException {
		return convert8859_1ToGB2312(obj.toString());
	}

	static public String byteToHex(byte b[], boolean upper) {
		String result = "";
		String stmp = "";
		for (int n = 0; n < b.length; n++) {
			stmp = Integer.toHexString(b[n] & 0xff);
			if (stmp.length() == 1) {
				result = result + "0" + stmp;
			} else {
				result = result + stmp;
			}
		}
		if (upper) {
			return result.toUpperCase();
		} else {
			return result.toLowerCase();
		}
	}

	static public String convertToGB2312(String str)
			throws UnsupportedEncodingException {
		return new String(str.getBytes(), "GB2312");
	}

	/**
	 * 将以分代表的字符串转换成以元代表的字符串,默认小数为两位
	 * 
	 * @param fen
	 * @return
	 */
	static public String convertFenToYuan(String fen) {
		return convertFenToYuan(Double.parseDouble(fen));
	}

	/**
	 * 将金额分转换成以元代表的字符串,默认小数为两位
	 * 
	 * @param fen
	 * @return
	 */
	static public String convertFenToYuan(double fen) {
		String result;
		try {
			double yuan = fen / 100;
			if (logger.isDebugEnabled()) {
				logger.debug("before convert fen = " + fen);
			}
			result = handleScale(yuan, 2);
			if (logger.isDebugEnabled()) {
				logger.debug("after convert yuan = " + yuan);
			}

		} catch (Exception ex) {
			logger.error(ex.getMessage());
			result = "0.00";
		}
		if (logger.isDebugEnabled()) {
			logger.debug("after convert result = " + result);
		}
		return result;
	}

}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -