- 浏览: 239411 次
- 性别:
- 来自: 上海
文章分类
最新评论
-
xmwjfid:
写的不错,就是有个疑问groupSize 这个用来干什么?
jQuery Ajax分页(pagination.js)分页插件 (转载) -
GRACEACT:
Thanks.对我很有帮助。
使用Java组件itext 生成pdf的介绍 -
xianzi_2008:
jQuery Ajax分页(pagination.js)分页插件 (转载) -
xiaotao.2010:
Demo a=new Demo()
{ ...
匿名类 -
system1029hq:
jQuery Ajax分页(pagination.js)分页插件 (转载)
package com.common.string; import java.util.ArrayList; import java.util.LinkedHashSet; import java.util.Set; import java.util.regex.Matcher; import java.util.regex.Pattern; /** * 功能描述:关于字符串的一些实用操作 * * @author King_wangyao * @version V1.0 */ public class StringUtil { /** * 功能描述:分割字符串 * * @param str * String 原始字符串 * @param splitsign * String 分隔符 * @return String[] 分割后的字符串数组 */ @SuppressWarnings("unchecked") public static String[] split(String str, String splitsign) { int index; if (str == null || splitsign == null) { return null; } ArrayList al = new ArrayList(); while ((index = str.indexOf(splitsign)) != -1) { al.add(str.substring(0, index)); str = str.substring(index + splitsign.length()); } al.add(str); return (String[]) al.toArray(new String[0]); } /** * 功能描述:替换字符串 * * @param from * String 原始字符串 * @param to * String 目标字符串 * @param source * String 母字符串 * @return String 替换后的字符串 */ public static String replace(String from, String to, String source) { if (source == null || from == null || to == null) return null; StringBuffer str = new StringBuffer(""); int index = -1; while ((index = source.indexOf(from)) != -1) { str.append(source.substring(0, index) + to); source = source.substring(index + from.length()); index = source.indexOf(from); } str.append(source); return str.toString(); } /** * 替换字符串,能能够在HTML页面上直接显示(替换双引号和小于号) * * @param str * String 原始字符串 * @return String 替换后的字符串 */ public static String htmlencode(String str) { if (str == null) { return null; } return replace("\"", """, replace("<", "<", str)); } /** * 替换字符串,将被编码的转换成原始码(替换成双引号和小于号) * * @param str * String * @return String */ public static String htmldecode(String str) { if (str == null) { return null; } return replace(""", "\"", replace("<", "<", str)); } private static final String _BR = "<br/>"; /** * 功能描述:在页面上直接显示文本内容,替换小于号,空格,回车,TAB * * @param str * String 原始字符串 * @return String 替换后的字符串 */ public static String htmlshow(String str) { if (str == null) { return null; } str = replace("<", "<", str); str = replace(" ", " ", str); str = replace("\r\n", _BR, str); str = replace("\n", _BR, str); str = replace("\t", " ", str); return str; } /** * 功能描述:返回指定字节长度的字符串 * * @param str * String 字符串 * @param length * int 指定长度 * @return String 返回的字符串 */ public static String toLength(String str, int length) { if (str == null) { return null; } if (length <= 0) { return ""; } try { if (str.getBytes("GBK").length <= length) { return str; } } catch (Exception e) { } StringBuffer buff = new StringBuffer(); int index = 0; char c; length -= 3; while (length > 0) { c = str.charAt(index); if (c < 128) { length--; } else { length--; length--; } buff.append(c); index++; } buff.append("..."); return buff.toString(); } /** * 功能描述:判断是否为整数 * * @param str * 传入的字符串 * @return 是整数返回true,否则返回false */ public static boolean isInteger(String str) { Pattern pattern = Pattern.compile("^[-\\+]?[\\d]+$"); return pattern.matcher(str).matches(); } /** * 判断是否为浮点数,包括double和float * * @param str * 传入的字符串 * @return 是浮点数返回true,否则返回false */ public static boolean isDouble(String str) { Pattern pattern = Pattern.compile("^[-\\+]?\\d+\\.\\d+$"); return pattern.matcher(str).matches(); } /** * 判断是不是合法字符 c 要判断的字符 */ public static boolean isLetter(String str) { if (str == null || str.length() < 0) { return false; } Pattern pattern = Pattern.compile("[\\w\\.-_]*"); return pattern.matcher(str).matches(); } /** * 从指定的字符串中提取Email content 指定的字符串 * * @param content * @return */ public static String parse(String content) { String email = null; if (content == null || content.length() < 1) { return email; } // 找出含有@ int beginPos; int i; String token = "@"; String preHalf = ""; String sufHalf = ""; beginPos = content.indexOf(token); if (beginPos > -1) { // 前项扫描 String s = null; i = beginPos; while (i > 0) { s = content.substring(i - 1, i); if (isLetter(s)) preHalf = s + preHalf; else break; i--; } // 后项扫描 i = beginPos + 1; while (i < content.length()) { s = content.substring(i, i + 1); if (isLetter(s)) sufHalf = sufHalf + s; else break; i++; } // 判断合法性 email = preHalf + "@" + sufHalf; if (isEmail(email)) { return email; } } return null; } /** * 功能描述:判断输入的字符串是否符合Email样式. * * @param str * 传入的字符串 * @return 是Email样式返回true,否则返回false */ public static boolean isEmail(String email) { if (email == null || email.length() < 1 || email.length() > 256) { return false; } Pattern pattern = Pattern .compile("^\\w+([-+.]\\w+)*@\\w+([-.]\\w+)*\\.\\w+([-.]\\w+)*$"); return pattern.matcher(email).matches(); } /** * 功能描述:判断输入的字符串是否为纯汉字 * * @param str * 传入的字符串 * @return 如果是纯汉字返回true,否则返回false */ public static boolean isChinese(String str) { Pattern pattern = Pattern.compile("[\u0391-\uFFE5]+$"); return pattern.matcher(str).matches(); } /** * 功能描述:是否为空白,包括null和"" * * @param str * @return */ public static boolean isBlank(String str) { return str == null || str.trim().length() == 0; } /** * 功能描述:判断是否为质数 * * @param x * @return */ public static boolean isPrime(int x) { if (x <= 7) { if (x == 2 || x == 3 || x == 5 || x == 7) return true; } int c = 7; if (x % 2 == 0) return false; if (x % 3 == 0) return false; if (x % 5 == 0) return false; int end = (int) Math.sqrt(x); while (c <= end) { if (x % c == 0) { return false; } c += 4; if (x % c == 0) { return false; } c += 2; if (x % c == 0) { return false; } c += 4; if (x % c == 0) { return false; } c += 2; if (x % c == 0) { return false; } c += 4; if (x % c == 0) { return false; } c += 6; if (x % c == 0) { return false; } c += 2; if (x % c == 0) { return false; } c += 6; } return true; } /** * 功能描述:人民币转成大写 * * @param str * 数字字符串 * @return String 人民币转换成大写后的字符串 */ public static String hangeToBig(String str) { double value; try { value = Double.parseDouble(str.trim()); } catch (Exception e) { return null; } char[] hunit = { '拾', '佰', '仟' }; // 段内位置表示 char[] vunit = { '万', '亿' }; // 段名表示 char[] digit = { '零', '壹', '贰', '叁', '肆', '伍', '陆', '柒', '捌', '玖' }; // 数字表示 long midVal = (long) (value * 100); // 转化成整形 String valStr = String.valueOf(midVal); // 转化成字符串 String head = valStr.substring(0, valStr.length() - 2); // 取整数部分 String rail = valStr.substring(valStr.length() - 2); // 取小数部分 String prefix = ""; // 整数部分转化的结果 String suffix = ""; // 小数部分转化的结果 // 处理小数点后面的数 if (rail.equals("00")) { // 如果小数部分为0 suffix = "整"; } else { suffix = digit[rail.charAt(0) - '0'] + "角" + digit[rail.charAt(1) - '0'] + "分"; // 否则把角分转化出来 } // 处理小数点前面的数 char[] chDig = head.toCharArray(); // 把整数部分转化成字符数组 char zero = '0'; // 标志'0'表示出现过0 byte zeroSerNum = 0; // 连续出现0的次数 for (int i = 0; i < chDig.length; i++) { // 循环处理每个数字 int idx = (chDig.length - i - 1) % 4; // 取段内位置 int vidx = (chDig.length - i - 1) / 4; // 取段位置 if (chDig[i] == '0') { // 如果当前字符是0 zeroSerNum++; // 连续0次数递增 if (zero == '0') { // 标志 zero = digit[0]; } else if (idx == 0 && vidx > 0 && zeroSerNum < 4) { prefix += vunit[vidx - 1]; zero = '0'; } continue; } zeroSerNum = 0; // 连续0次数清零 if (zero != '0') { // 如果标志不为0,则加上,例如万,亿什么的 prefix += zero; zero = '0'; } prefix += digit[chDig[i] - '0']; // 转化该数字表示 if (idx > 0) prefix += hunit[idx - 1]; if (idx == 0 && vidx > 0) { prefix += vunit[vidx - 1]; // 段结束位置应该加上段名如万,亿 } } if (prefix.length() > 0) prefix += '圆'; // 如果整数部分存在,则有圆的字样 return prefix + suffix; // 返回正确表示 } /** * 功能描述:去掉字符串中重复的子字符串 * * @param str * 原字符串,如果有子字符串则用空格隔开以表示子字符串 * @return String 返回去掉重复子字符串后的字符串 */ @SuppressWarnings("unused") private static String removeSameString(String str) { Set<String> mLinkedSet = new LinkedHashSet<String>();// set集合的特征:其子集不可以重复 String[] strArray = str.split(" ");// 根据空格(正则表达式)分割字符串 StringBuffer sb = new StringBuffer(); for (int i = 0; i < strArray.length; i++) { if (!mLinkedSet.contains(strArray[i])) { mLinkedSet.add(strArray[i]); sb.append(strArray[i] + " "); } } System.out.println(mLinkedSet); return sb.toString(); } /** * 功能描述:过滤特殊字符 * * @param src * @return */ public static String encoding(String src) { if (src == null) return ""; StringBuilder result = new StringBuilder(); if (src != null) { src = src.trim(); for (int pos = 0; pos < src.length(); pos++) { switch (src.charAt(pos)) { case '\"': result.append("""); break; case '<': result.append("<"); break; case '>': result.append(">"); break; case '\'': result.append("'"); break; case '&': result.append("&"); break; case '%': result.append("&pc;"); break; case '_': result.append("&ul;"); break; case '#': result.append("&shap;"); break; case '?': result.append("&ques;"); break; default: result.append(src.charAt(pos)); break; } } } return result.toString(); } /** * 功能描述:判断是不是合法的手机号码 * * @param handset * @return boolean */ public static boolean isHandset(String handset) { try { String regex = "^1[\\d]{10}$"; Pattern pattern = Pattern.compile(regex); Matcher matcher = pattern.matcher(handset); return matcher.matches(); } catch (RuntimeException e) { return false; } } /** * 功能描述:反过滤特殊字符 * * @param src * @return */ public static String decoding(String src) { if (src == null) return ""; String result = src; result = result.replace(""", "\"").replace("'", "\'"); result = result.replace("<", "<").replace(">", ">"); result = result.replace("&", "&"); result = result.replace("&pc;", "%").replace("&ul", "_"); result = result.replace("&shap;", "#").replace("&ques", "?"); return result; } /** * @param args */ public static void main(String[] args) { // String source = "abcdefgabcdefgabcdefgabcdefgabcdefgabcdefg"; // String from = "efg"; // String to = "房贺威"; // System.out.println("在字符串source中,用to替换from,替换结果为:" + replace(from, to, source)); // System.out.println("返回指定字节长度的字符串:" + toLength("abcdefgabcdefgabcdefgabcdefgabcdefgabcdefg", 9)); // System.out.println("判断是否为整数:" + isInteger("+0")); // System.out.println("判断是否为浮点数,包括double和float:" + isDouble("+0.36")); // System.out.println("判断输入的字符串是否符合Email样式:" + // isEmail("fhwbj@163.com")); // System.out.println("判断输入的字符串是否为纯汉字:" + isChinese("你好!")); // System.out.println("判断输入的数据是否是质数:" + isPrime(12)); // System.out.println("人民币转换成大写:" + hangeToBig("10019658")); // System.out.println("去掉字符串中重复的子字符串:" + removeSameString("100 100 9658")); // System.out.println("过滤特殊字符:" + encoding("100\"s<>fdsd100 9658")); // System.out.println("判断是不是合法的手机号码:" + isHandset("15981807340")); // System.out.println("从字符串中取值Email:" + parse("159818 fwhbj@163.com 07340")); } }
发表评论
-
JavaScript与Java的区别
2012-09-29 23:50 10931.基于对象和面向对象 Java是一种面向对象的语言 ... -
应该被记住的 8 位Java人物
2012-07-04 17:53 1454这里列举了 8 个 Java 人物,他们创建了对 Ja ... -
Struts基本原理
2012-07-04 17:48 1544上图来源于Struts2官方站点,是Struts 2 的整 ... -
Spring事务配置的五种方式
2012-07-04 17:45 1471Spring配置文件中关于事务配置总是由三个组成部分,分别是D ... -
MyEclipse中Ctrl+Shift+F格式化代码时不换行
2012-06-12 21:04 2730Eclipse 格式化代码时不换行 每次用Eclipse自带 ... -
MyEclipse 解决内存溢出
2012-06-12 20:57 22981、修改eclipse.ini在Myeclipse安装目录下G ... -
J2EE体系结构图或三层结构图
2012-05-05 23:55 4848J2EE体系结构图或三层结构图 J2EE体系结构图: ... -
struts2<s:iterator>遍历map小结
2012-05-05 23:34 26101.MapAction.java package com.u ... -
java 调用.net DLL的方法
2012-04-30 16:18 1520背景: 近日一个ja ... -
实现了ZIP【压缩】【解压】功能
2012-04-28 13:59 1316程序实现了ZIP压缩。共分为2部分 : 压缩(compress ... -
Windows 任务管理器 PF使用率 总数 核心内存 物理内存
2012-04-28 13:14 15461、【CPU 使用】 CPU的使用百分比,柱状图表示实时的 ... -
在windowsXP中如何卸载Oracle10g
2012-03-19 21:45 1340软件环境: 1、Windows XP ... -
MD5
2012-03-15 22:22 975package com.kingsoft.main; / ... -
cookie与session的区别和联系
2012-02-01 11:58 1170最佳答案具体来说cookie ... -
《网站开发人员应该知道的61件事》[解读]
2011-12-03 21:36 1673看了阮一峰翻译的《 ... -
JAVA字符串的方法
2011-11-28 21:04 10631、length() 字符串的长度 例:char chars ... -
JAVA中线程同步方法
2011-11-28 21:01 20301 wait方法: 该方法属于Object的方 ... -
JAVA几个常见错误简析
2011-11-28 20:58 1022JAVA几个常见错误简析: 1,空指针错误 java ... -
Eclipse中使用debug技术
2011-11-28 20:52 1339一、怎样启动debug模式 1、在程序中设置断点 ... -
从字符串中检索输出数字
2011-10-31 23:59 986Stirng name="asdfq5asdf23& ...
相关推荐
在.NET编程环境中,`StringUtil`通常是指一个自定义的实用工具类,用于处理字符串的各种操作。这个类可能包含了丰富的静态方法,旨在简化和优化对字符串的处理,因为.NET框架的标准库`System.String`虽然功能强大,...
[工具类] CookieCounter .java.txt [工具类] 验证码img .jsp.txt [工具类] Java中计算任意两...[工具类] 框架StringUtil.java [工具类] 时间Time.java [工具类] 时间工具TimeUtil.java [工具类] 连数据库ConnectDB.java
使用java工具类可有效的提高开发效率! ...感谢支持 [工具类] CookieCounter .java.txt ...[工具类] 框架StringUtil.java [工具类] 时间Time.java [工具类] 时间工具TimeUtil.java [工具类] 连数据库ConnectDB.java
1. **[工具类] 框架StringUtil.java**:这是一个针对字符串处理的工具类,可能包含字符串拼接、格式化、检查空值、分割、替换等方法,有助于简化字符串操作,避免代码冗余。 2. **[工具类] 时间工具TimeUtil.java**...
Jodd = Tools IoC MVC DB AOP TX JSON HTML < 1.5 MbJodd 被分成众多模块,按需选择,其中工具类模块有:jodd-core 一些工具类,包括Printf、JDateTime、StringUtil、Fast buffers等等jodd-bean BeanUtil以及类型...
4. **字符串操作**:StringUtil是Jodd提供的字符串处理工具,包含了一系列方便的静态方法,如分割、替换、去除空白、检查格式等,极大地增强了Java字符串处理的能力。 5. **I/O流**:IoUtil是处理输入/输出流的利器...
在Jodd库中,Base64工具类通常位于`org.jodd.io`或`org.jodd.util`等包下,这些工具类可以帮助开发者方便地处理Base64编码和解码任务,比如将图片、文本或者其他二进制数据转换成Base64字符串,或者将Base64字符串...
本资源提供了一个名为"StringUtil"的自定义工具类,以及一个用于Excel导出的功能。这些工具可以帮助开发者简化代码,提高效率,同时附带了API文档以便理解和使用。 首先,`StringUtil`工具类是一个集成了多种字符串...
galaxy 起源于07年的一个数据库导库项目,做一个增删改... <%=com.zxhy.fxpt.common.util.StringUtil.getdaohang(pageinfo.getInt("pagecount"),pageinfo.getInt("pagenum"))%> 有兴趣的话,跟我联系qq: 376860997
例如,"StringUtil.java"可能包含各种字符串操作的方法,如字符串拼接、格式化、分割等;"DateUtil.java"则可能提供了日期和时间的转换、计算等功能。 在深入分析之前,我们需要了解源码的基本结构和命名规范。通常...
java.util.Date date = null; try { SimpleDateFormat parseTime = new SimpleDateFormat("yyyy-MM-dd"); date = parseTime.parse("2008-12-23"); } catch (ParseException e) { e.printStackTrace(); } ...
5. **实用工具类**:例如UtilValidate.class、StringUtil.class等,这些工具类提供了常用的功能,如字符串处理、数据验证,提高了开发效率。 6. **MVC架构**:从文件名如ModelListAction.class、FormBeanUtil.class...
### 观察者模式框架详解 #### 一、观察者模式概述 观察者模式(Observer Pattern)是一种行为设计模式,它定义了对象间的一种一对多依赖关系,以便当一个对象的状态发生改变时,所有依赖于它的对象都会得到通知并...
`spring-util-4.2.xsd.zip`这个压缩包就包含了Spring框架中`util`命名空间的4.2版本的XML Schema定义文件,对于离线开发或网络环境不佳的开发者来说,这是一个非常实用的资源。 首先,我们来了解一下什么是XSD(XML...
public static void main(String[] args) { // 通过schedulerFactory获取一个调度器 SchedulerFactory factory = new StdSchedulerFactory(); try { Scheduler scheduler = factory.getScheduler(); scheduler...
import android.util.AttributeSet; import android.widget.ImageView; import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; public class SmartImageView extends ImageView {...
import java.util.Date; import com.opensymphony.xwork2.ActionSupport; public class RegisAction extends ActionSupport { private String username; private String password; private Date birthday; //...
<%@ page language="java" import="java.util.*" pageEncoding="GB2312"%> String path = request.getContextPath(); String basePath = request.getScheme()+"://"+request.getServerName()+":"+request....
开发者应该能够在这个文件夹里找到各种以特定功能命名的Java类,比如`StringUtil`、`DateUtil`、`NetworkUtil`等。 以下是一些可能的工具类及其常见功能: - **网络相关**:如`NetworkUtil`,提供检测网络连接状态...