📄 stringutil.java
字号:
}
/**
*指定字符串替换
* @param line 串值字符
* @param oldStr 要替换的串值
* @param newStr 目标串值
* @return 返回替换后的字符串
* @throws java.lang.Exception
*/
public static String replace(
String mainString,
String oldString,
String newString)
{
if (mainString == null)
{
return null;
}
int i = mainString.lastIndexOf(oldString);
if (i < 0)
{
return mainString;
}
StringBuffer mainSb = new StringBuffer(mainString);
while (i >= 0)
{
mainSb.replace(i, i + oldString.length(), newString);
i = mainString.lastIndexOf(oldString, i - 1);
}
return mainSb.toString();
}
/**
*指定字符串替换 [张科专用..倒哟]
* @param line 串值字符
* @param oldStr 要替换的串值
* @param newStr 目标串值
* @return 返回替换后的字符串
* @throws java.lang.Exception
*/
public static String replace1(
String mainString,
String oldString,
String newString)
{
if (mainString == null)
{
return null;
}
int i = mainString.lastIndexOf(oldString);
if (i < 0)
{
return mainString;
}
StringBuffer mainSb = new StringBuffer(mainString);
while (i >= 0)
{
mainSb.replace(i, i + oldString.length(), newString);
i = mainString.lastIndexOf(oldString, i - 1);
}
return mainSb.toString();
}
/**
* Check a string null or blank.
* @param param string to check
* @return boolean
*/
public static boolean nullOrBlank(String param)
{
return (param == null || param.trim().equals("")) ? true : false;
}
public static String notNull(String param)
{
return param == null ? "" : param.trim();
}
/**
* Parse a string to int.
* @param param string to parse
* @return int value, on exception return 0.
*/
public static int parseInt(String param)
{
int i = 0;
try
{
i = Integer.parseInt(param);
}
catch (Exception e)
{
i = (int) parseFloat(param);
e.printStackTrace();
}
return i;
}
public static long parseLong(String param)
{
long l = 0;
try
{
l = Long.parseLong(param);
}
catch (Exception e)
{
l = (long) parseDouble(param);
}
return l;
}
public static float parseFloat(String param)
{
float f = 0;
try
{
f = Float.parseFloat(param);
}
catch (Exception e)
{
//
}
return f;
}
public static double parseDouble(String param)
{
double d = 0;
try
{
d = Double.parseDouble(param);
}
catch (Exception e)
{
//
}
return d;
}
/**
* Parse a string to boolean.
* @param param string to parse
* @return boolean value, if param begin with(1,y,Y,t,T) return true,
* on exception return false.
*/
public static boolean parseBoolean(String param)
{
if (nullOrBlank(param))
{
return false;
}
switch (param.charAt(0))
{
case '1':
case 'y':
case 'Y':
case 't':
case 'T':
return true;
}
return false;
}
/**
* Convert URL .
* @param input string to convert
* @return string
*/
public static String convertURL(String input)
{
if (input == null || input.length() == 0)
{
return input;
}
StringBuffer buf = new StringBuffer(input.length() + 25);
char chars[] = input.toCharArray();
int len = input.length();
int index = -1;
int i = 0;
int j = 0;
int oldend = 0;
while (++index < len)
{
char cur = chars[i = index];
j = -1;
if ( (cur == 'f'
&& index < len - 6
&& chars[++i] == 't'
&& chars[++i] == 'p'
|| cur == 'h'
&& (i = index) < len - 7
&& chars[++i] == 't'
&& chars[++i] == 't'
&& chars[++i] == 'p'
&& (chars[++i] == 's' || chars[--i] == 'p'))
&& i < len - 4
&& chars[++i] == ':'
&& chars[++i] == '/'
&& chars[++i] == '/')
{
j = ++i;
}
if (j > 0)
{
if (index == 0
|| (cur = chars[index - 1]) != '\''
&& cur != '"'
&& cur != '<'
&& cur != '=')
{
cur = chars[j];
while (j < len)
{
if (cur == ' '
|| cur == '\t'
|| cur == '\''
|| cur == '"'
|| cur == '<'
|| cur == '['
|| cur == '\n'
|| cur == '\r'
&& j < len - 1
&& chars[j + 1] == '\n')
{
break;
}
if (++j < len)
{
cur = chars[j];
}
}
cur = chars[j - 1];
if (cur == '.' || cur == ',' || cur == ')' || cur == ']')
{
j--;
}
buf.append(chars, oldend, index - oldend);
buf.append("<a href=\"");
buf.append(chars, index, j - index);
buf.append('"');
buf.append(" target=\"_blank\"");
buf.append('>');
buf.append(chars, index, j - index);
buf.append("</a>");
}
else
{
buf.append(chars, oldend, j - oldend);
}
oldend = index = j;
}
else
if (cur == '[' && index < len - 6 && chars[i =
index + 1] == 'u'
&& chars[++i] == 'r'
&& chars[++i] == 'l'
&& (chars[++i] == '=' || chars[i] == ' '))
{
j = ++i;
int u2;
int u1 = u2 = input.indexOf("]", j);
if (u1 > 0)
{
u2 = input.indexOf("[/url]", u1 + 1);
}
if (u2 < 0)
{
buf.append(chars, oldend, j - oldend);
oldend = j;
}
else
{
buf.append(chars, oldend, index - oldend);
buf.append("<a href =\"");
String href = input.substring(j, u1).trim();
if (href.indexOf("javascript:") == -1
&& href.indexOf("file:") == -1)
{
buf.append(href);
}
buf.append("\" target=\"_blank");
buf.append("\">");
buf.append(input.substring(u1 + 1, u2).trim());
buf.append("</a>");
oldend = u2 + 6;
}
index = oldend;
}
}
if (oldend < len)
{
buf.append(chars, oldend, len - oldend);
}
return buf.toString();
}
/**
* Display a string in html page, call methods: escapeHTMLTags, convertURL,
* convertNewlines.
* @param input string to display
* @return string
*/
public static String dspHtml(String input)
{
String str = input;
if (str == null)
{
return " ";
}
str = createBreaks(str, 80);
str = escapeHTMLTags(str);
str = convertURL(str);
str = convertNewlines(str);
return str;
}
/**
*
* @param c
* @return is letter
*/
public static boolean isLeter(char c)
{
return Character.isLetter(c);
}
/**
*
* @param c
* @return is digit
*/
public static boolean isDigit(char c)
{
return Character.isDigit(c);
}
public static String getMD5(String text)
{
String key = "0123456789";
try
{
MessageDigest md = MessageDigest.getInstance("MD5");
md.update(text.getBytes());
md.update(key.getBytes());
ByteArrayInputStream bs = new ByteArrayInputStream(md.digest());
StringWriter sw = new StringWriter();
for (int i = 0; i < 16; i++)
{
String bt = Integer.toHexString(bs.read());
if (bt.length() < 2)
{
sw.write("0" + bt);
}
else
{
sw.write(bt);
}
}
String r = sw.toString();
bs.close();
sw.close();
return r;
}
catch (Exception e)
{
return "";
}
}
public static String replaceAll(String src, String str)
{
StringBuffer s = new StringBuffer(src);
for (int i = 0; i < s.length(); i++)
{
if (s.charAt(i) == '\'')
{
s.replace(i, i + 1, str);
i += str.length() - 1;
}
}
return s.toString();
}
/**
* 对要写入数据库的字符串内容进行安全替换(字符串内容可还原)
* @param line 要进行安全替换的字符串
* @return 返回安全的字符串
* @throws java.lang.Exception
*/
public String str2db(String line) //写入
throws Exception
{
line = replace(line, "'", "THE_POINT");
line = replace(line, ",", "THE_COMMA1");
line = replace(line, ",", "THE_COMMA2");
line = replace(line, ";", "THE_FH1");
line = replace(line, "(", "THE_ZK");
line = replace(line, ")", "THE_YK");
line = replace(line, "「", "THE_FZ");
line = replace(line, "」", "THE_FY");
// db db=new db();
// line = db.sword(line);
// this.toUnicode(line,"gbk");
return line;
}
/**
* 把从数据库内要输出到页面的字符串进行安全还原
* @param line 要进行还原的字符串
* @return 返回原始字符串
* @throws java.lang.Exception
*/
public static String db2str(String line) //读取
throws Exception
{
line = replace(line, "THE_POINT", "'");
line = replace(line, "THE_COMMA1", ",");
line = replace(line, "THE_COMMA2", ",");
line = replace(line, "THE_FH1", ";");
line = replace(line, "THE_ZK", "(");
line = replace(line, "THE_YK", ")");
line = replace(line, "THE_FZ", "「");
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -