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

📄 stringutil.java

📁 简单的j2ee轻量级框架
💻 JAVA
字号:
package com.prinice.jfoot.util.DataUtil;

/**
 * @author:Leo
 * @version:1.0
 * @description:字符串处理
 * @date:2008-2-20
 */

public class StringUtil {

	// used to encode the input string
	private static final int CRY_KEY = 15;
	// used to limit the length of the final encoded_pass
	private static final int STR_LEN = 32;
	// used to change the cry_key to every byte
	private static final int MUL_NUM = 3;

	/**
	 * @description:对输入字符串进行非null处理和前后去空格处理
	 */
	public static String getString(String input) {
		return (input == null ? "" : input).trim();
	}

	/**
	 * @description:对输入字符串进行非null处理和前后去空格处理,并用param2作默认值
	 */
	public static String getString(String input, String defaultValue) {
		return (input == null ? defaultValue : input).trim();
	}

	/**
	 * @description:对输入字符串进行非null处理和前后去空格处理
	 */
	public static int getInt(String input) {
		return Integer.parseInt((input == null ? "0" : input).trim());
	}
	
	/**
	 * @description:对输入字符串进行非null处理和前后去空格处理
	 */
	public static float getFloat(String input) {
		return Float.parseFloat((input == null || input.length() == 0 ? "0" : input).trim());
	}

	/**
	 * 数据值加密函数,加密后的结果由解密函数得到。
	 * 
	 * @param s
	 *            String 待加密字符串
	 * @return String 加密结果
	 */
	public static String encoded(String s) {
		char[] buff1 = new char[STR_LEN];
		buff1 = s.toCharArray();
		int b_len = buff1.length;
		for (int i = 0; i < b_len && i < STR_LEN; i++)
			buff1[i] = (char) ((int) buff1[i] ^ (CRY_KEY + MUL_NUM * i));
		return new String(buff1);
	}

	/**
	 * 数据值解密函数
	 * 
	 * @param s
	 *            String 待解密字符串
	 * @return String 解密结果
	 */
	public static String decoded(String s) {
		char[] buff1 = new char[STR_LEN];
		buff1 = s.toCharArray();
		int b_len = buff1.length;
		for (int i = 0; i < b_len && i < STR_LEN; i++)
			buff1[i] = (char) ((int) buff1[i] ^ (CRY_KEY + MUL_NUM * i));
		return new String(buff1);
	}

	/**
	 * 待改进,暂用
	 * 
	 * @param srcStr
	 * @param findStr
	 * @param replStr
	 * @return
	 */
	public static String replaceAll(String srcStr, String findStr,
			String replStr) {
		return repl(srcStr, findStr, replStr, -1);
	}

	/**
	 * 待改进,暂用
	 * 
	 * @param srcStr
	 * @param findStr
	 * @param replStr
	 * @param times
	 * @return
	 */
	private static String repl(String srcStr, String findStr, String replStr,
			int times) {
		if (times == 0)
			return srcStr;

		if (srcStr == null || srcStr.length() < 1 || findStr == null
				|| findStr.length() < 1 || replStr == null)
			return srcStr;

		int curTimes = 0; // 替换次数
		int startPos = 0; // 开始位置
		int nextPos = 0; // 下一位置;
		int len = srcStr.length(); // 串长
		StringBuffer result = new StringBuffer(); //

		if (times > 0) // 替换指定次数
		{
			while (curTimes < times && startPos < len) {
				nextPos = srcStr.indexOf(findStr, startPos);
				if (nextPos >= 0) {
					result.append(srcStr.substring(startPos, nextPos));
					result.append(replStr);
					startPos = nextPos + findStr.length();
					curTimes++;
				} else {
					result.append(srcStr.substring(startPos));
					break;
				}
			}

			if (curTimes >= times && startPos < len) // 次数到
			{
				result.append(srcStr.substring(startPos));
			}
		} else // 全部替换
		{
			while (startPos < len
					&& (nextPos = srcStr.indexOf(findStr, startPos)) >= 0) {
				result.append(srcStr.substring(startPos, nextPos));
				result.append(replStr);
				startPos = nextPos + findStr.length();
			}

			if (startPos < len) {
				result.append(srcStr.substring(startPos));
			}
		}
		return new String(result);
	}
}

⌨️ 快捷键说明

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