- 浏览: 81627 次
- 性别:
- 来自: 上海
文章分类
最新评论
package com.jinqiao.util;
import java.util.ArrayList;
import java.util.List;
import javax.persistence.Entity;
@Entity
public class StringUtil {
/**
* 去掉给定字符串前和后的空格,返回干净的字符串
* @param str
* @return String
*/
public static String removeSpaces(String args) {
if(args!=null){
args = args.trim();
while (args.startsWith(" ")) {
args = args.substring(1, args.length()).trim();
}
while (args.endsWith(" ")) {
args = args.substring(0, args.length() - 1).trim();
}
}else{
args = "";
}
return args;
}
/**
* 转全角的函数
* @param str
* @return String
*/
public static String toSBC(String input) {
//半角转全角:
char[] c = input.toCharArray();
for (int i = 0; i < c.length; i++) {
if (c[i] == 32) {
c[i] = (char) 12288;
continue;
}
if (c[i] < 127) {
c[i] = (char) (c[i] + 65248);
}
}
return new String(c);
}
/**
* 转半角的函数
* @param str
* @return String
*/
public static String toDBC(String input) {
char[] c = input.toCharArray();
for (int i = 0; i < c.length; i++) {
if (c[i] == 12288) {
c[i] = (char) 32;
continue;
}
if (c[i] > 65280 && c[i] < 65375){
c[i] = (char) (c[i] - 65248);
}
}
return new String(c);
}
/**
* 为每添加一个元素前面增加指定的分隔 除第一个元素之外
* @param str
* @param appStr
* @param compart
* @return
*/
public static StringBuffer appendElement(StringBuffer strB,String appStr,String compart){
//当出入参数为NULL时
if(strB == null){
return new StringBuffer(appStr);
}
//当没有元素时直接添加追加元素 否则先添加分隔符
if(strB.length() == 0){
strB.append(appStr);
}else{
strB.append(compart);
strB.append(appStr);
}
return strB;
}
/**
* 移除元素
* @param str
* @param moveStr
* @param compart
* @return
*/
public static StringBuffer moveElement(StringBuffer strB,String moveStr,String compart){
//当出入参数为NULL时
if(strB == null){
return strB;
}
StringBuffer newStrB = new StringBuffer();
String[] strArray = strB.toString().split(compart);
for(int i=0;i<strArray.length;i++){
if(moveStr.equals(strArray[i])){
continue;
}
if(i == 0){
newStrB.append(strArray[i]);
}else{
newStrB.append(compart);
newStrB.append(strArray[i]);
}
}
return newStrB;
}
/**
* 移除第一个匹配的元素
* @param str
* @param moveStr
* @param compart
* @return
*/
public static StringBuffer moveFirstElement(StringBuffer strB,String moveStr,String compart){
//当出入参数为NULL时
if(strB == null){
return strB;
}
StringBuffer newStrB = new StringBuffer();
String[] strArray = strB.toString().split(compart);
boolean tag = false;
for(int i=0;i<strArray.length;i++){
if(moveStr.equals(strArray[i]) == true && tag == false){
tag = true;
continue;
}
if(i == 0){
newStrB.append(strArray[i]);
}else{
newStrB.append(compart);
newStrB.append(strArray[i]);
}
}
return newStrB;
}
/**
* 从给定字符中 返回所含的中文字符 并按每组以以字符串数组的形式返回
* @param src
* @return
*/
public static String[] getChinese(String src){
List list = new ArrayList();
byte[] srcByte = src.getBytes();
int srcLength = srcByte.length;
int begin = -1;
int end = -1;
for(int i=0;i<srcLength;i++){
//设置中文的开始位
if(srcByte[i] < 0 && begin == -1){
begin = i;
}
//设置中文的结束位
if(srcByte[i] > 0 && begin != -1 && end == -1){
end = i;
}
//如果已经找到中文的开始 但直到最后也没找到中文的结束,则将字符的结束位当成中文的截止位
if(begin != -1 && i == srcLength - 1){
end = i;
}
//将中文提取出来
if(begin != -1 && end != -1){
int tempLength = end-begin+1;
if(tempLength % 2 != 0){
tempLength = tempLength - 1;
}
byte[] tempByte = new byte[tempLength];
System.arraycopy(srcByte, begin, tempByte, 0, tempLength);
list.add(new String(tempByte));
begin = -1;
end = -1;
}
}
//将中文以数组输出
int size = list.size();
String[] chineseArray = new String[size];
for(int i=0;i<size;i++){
chineseArray[i] = list.get(i).toString();
}
return chineseArray;
}
public static String zeroleft(String str,Integer len){
if(str==null||str.trim().length()<1)
str = "1";
while(str.length()<len){
str ="0" + str;
}
return str;
}
public static void main(String[] args) {
StringBuffer str = new StringBuffer("a,c,d,c");
str = StringUtil.moveFirstElement(str, "c", ",");
System.out.println(str.toString());
}
}
import java.util.ArrayList;
import java.util.List;
import javax.persistence.Entity;
@Entity
public class StringUtil {
/**
* 去掉给定字符串前和后的空格,返回干净的字符串
* @param str
* @return String
*/
public static String removeSpaces(String args) {
if(args!=null){
args = args.trim();
while (args.startsWith(" ")) {
args = args.substring(1, args.length()).trim();
}
while (args.endsWith(" ")) {
args = args.substring(0, args.length() - 1).trim();
}
}else{
args = "";
}
return args;
}
/**
* 转全角的函数
* @param str
* @return String
*/
public static String toSBC(String input) {
//半角转全角:
char[] c = input.toCharArray();
for (int i = 0; i < c.length; i++) {
if (c[i] == 32) {
c[i] = (char) 12288;
continue;
}
if (c[i] < 127) {
c[i] = (char) (c[i] + 65248);
}
}
return new String(c);
}
/**
* 转半角的函数
* @param str
* @return String
*/
public static String toDBC(String input) {
char[] c = input.toCharArray();
for (int i = 0; i < c.length; i++) {
if (c[i] == 12288) {
c[i] = (char) 32;
continue;
}
if (c[i] > 65280 && c[i] < 65375){
c[i] = (char) (c[i] - 65248);
}
}
return new String(c);
}
/**
* 为每添加一个元素前面增加指定的分隔 除第一个元素之外
* @param str
* @param appStr
* @param compart
* @return
*/
public static StringBuffer appendElement(StringBuffer strB,String appStr,String compart){
//当出入参数为NULL时
if(strB == null){
return new StringBuffer(appStr);
}
//当没有元素时直接添加追加元素 否则先添加分隔符
if(strB.length() == 0){
strB.append(appStr);
}else{
strB.append(compart);
strB.append(appStr);
}
return strB;
}
/**
* 移除元素
* @param str
* @param moveStr
* @param compart
* @return
*/
public static StringBuffer moveElement(StringBuffer strB,String moveStr,String compart){
//当出入参数为NULL时
if(strB == null){
return strB;
}
StringBuffer newStrB = new StringBuffer();
String[] strArray = strB.toString().split(compart);
for(int i=0;i<strArray.length;i++){
if(moveStr.equals(strArray[i])){
continue;
}
if(i == 0){
newStrB.append(strArray[i]);
}else{
newStrB.append(compart);
newStrB.append(strArray[i]);
}
}
return newStrB;
}
/**
* 移除第一个匹配的元素
* @param str
* @param moveStr
* @param compart
* @return
*/
public static StringBuffer moveFirstElement(StringBuffer strB,String moveStr,String compart){
//当出入参数为NULL时
if(strB == null){
return strB;
}
StringBuffer newStrB = new StringBuffer();
String[] strArray = strB.toString().split(compart);
boolean tag = false;
for(int i=0;i<strArray.length;i++){
if(moveStr.equals(strArray[i]) == true && tag == false){
tag = true;
continue;
}
if(i == 0){
newStrB.append(strArray[i]);
}else{
newStrB.append(compart);
newStrB.append(strArray[i]);
}
}
return newStrB;
}
/**
* 从给定字符中 返回所含的中文字符 并按每组以以字符串数组的形式返回
* @param src
* @return
*/
public static String[] getChinese(String src){
List list = new ArrayList();
byte[] srcByte = src.getBytes();
int srcLength = srcByte.length;
int begin = -1;
int end = -1;
for(int i=0;i<srcLength;i++){
//设置中文的开始位
if(srcByte[i] < 0 && begin == -1){
begin = i;
}
//设置中文的结束位
if(srcByte[i] > 0 && begin != -1 && end == -1){
end = i;
}
//如果已经找到中文的开始 但直到最后也没找到中文的结束,则将字符的结束位当成中文的截止位
if(begin != -1 && i == srcLength - 1){
end = i;
}
//将中文提取出来
if(begin != -1 && end != -1){
int tempLength = end-begin+1;
if(tempLength % 2 != 0){
tempLength = tempLength - 1;
}
byte[] tempByte = new byte[tempLength];
System.arraycopy(srcByte, begin, tempByte, 0, tempLength);
list.add(new String(tempByte));
begin = -1;
end = -1;
}
}
//将中文以数组输出
int size = list.size();
String[] chineseArray = new String[size];
for(int i=0;i<size;i++){
chineseArray[i] = list.get(i).toString();
}
return chineseArray;
}
public static String zeroleft(String str,Integer len){
if(str==null||str.trim().length()<1)
str = "1";
while(str.length()<len){
str ="0" + str;
}
return str;
}
public static void main(String[] args) {
StringBuffer str = new StringBuffer("a,c,d,c");
str = StringUtil.moveFirstElement(str, "c", ",");
System.out.println(str.toString());
}
}
发表评论
-
java ZIP压缩工具类
2015-01-28 14:35 1023package com.common.util; i ... -
java ftp工具类
2015-01-28 14:33 1474package com.common.util; i ... -
java socket编程
2014-01-02 16:53 1220引用 /** * 工行实名认证处理方法 * ... -
Spring_Security_多页面登录配置教程
2011-08-08 10:13 17273本文转自百度文库:http://wenku.baidu.com ... -
从数据库中读取带换行的字符串
2011-06-01 09:25 7210数据库中的workExp(工作经历)字段是带换行或回车的字符串 ... -
向已获取的list中插入值
2011-08-08 11:23 2028public List getWfList(String id ... -
正则表达式常用验证方法
2011-05-26 15:02 1517function isDigit(s) { var patr ... -
java常用操作方法(六) 远程文件操作 RemoteFileUtil
2011-05-26 14:58 4538package com.jinqiao.util; impo ... -
java常用操作方法(五)金额 MoneyUtil
2011-05-26 14:57 2095package com.jinqiao.util; impo ... -
java常用操作方法(四)数学计算操作 MathUtil
2011-05-26 14:55 8905package com.jinqiao.util; impo ... -
java常用操作方法(二)文件操作类 FileUtil
2011-05-26 14:50 4552package com.jinqiao.util; impo ... -
java常用操作方法(一)日期工具类 DateUtil
2011-05-26 14:46 3410/* * Created on 2011-5-26 * ...
相关推荐
- `StringUtil`通常包含一系列静态方法,用于处理和操作字符串。例如,它可能有检查空字符串 (`isEmpty()`)、去除空白 (`trim()`)、比较字符串 (`equals()`)、替换子串 (`replace()`)、分割字符串 (`split()`) 等...
`StringUtil`是一个常见的Java工具类,它包含了大量用于处理字符串的方法,可以极大地简化字符串操作,提高代码的可读性和效率。在Java开发中,我们经常会遇到对字符串进行各种操作的需求,如检查空值、分割、连接、...
首先,`StringUtil`通常是自定义或第三方库中用于处理字符串的工具类。它包含了对字符串的各种操作,如拼接、分割、替换、检查空值、格式化等。例如,`isBlank()`方法可以判断字符串是否为空或仅包含空白字符,`join...
字符串处理是编程中非常常见的任务,因此,一个字符串工具类会包含许多对字符串进行操作的方法。这可能包括字符串的格式化、分割、连接、查找和替换、去除空白字符、大小写转换、检查是否符合特定模式(如邮箱格式...
在Java编程中,工具类(Util Classes)是程序员日常工作中不可或缺的部分,它们提供了一系列静态方法,用于执行常见的任务,如JSON解析、日期处理、字符串操作等。以下是对标题和描述中涉及的知识点的详细说明: 1....
1. **字符串处理工具类(StringUtil)**:此类通常包含处理字符串的各种方法,如字符串拼接、格式化、去除空白字符、判断是否为空、分割字符串等。例如`isEmpty()`用于检查字符串是否为空,`join()`用于连接字符串数...
`StringUtil` 类是这样一个工具类,它集合了多种常用的字符串处理方法,以提高开发效率并减少代码重复。在这个类中,我们可以找到包括分隔、插入、判断字符串状态(空或非空)、去除空格等多种功能,这些都是在实际...
在Java编程语言中,字符串(String)是一个非常基础且重要的数据类型。它被广泛用于处理文本信息,例如用户输入、文件内容、网络数据等。本文将深入探讨Java中的字符串操作,包括创建、比较、拼接、查找与替换、分割...
在实际开发中,很多编程语言都提供了一些内置的字符串工具类或模块,如Python的`str`类、JavaScript的`String`对象、C#的`System.Text.StringBuilder`等。这些工具类通常包含一系列静态方法,用于执行诸如格式化、...
在Java编程语言中,分割字符串是一项常见的操作,它允许我们将一个长字符串分解成多个子字符串,每个子字符串对应原字符串中的某个部分。这通常通过使用`split()`方法来实现,该方法是Java `String`类的一个成员。在...
其次,StringUtil是处理字符串的工具类,它提供了许多在处理字符串时非常实用的方法。比如,检查字符串是否为空 (`StringUtil.isEmpty(str)`), 字符串替换 (`StringUtil.replace(str, oldStr, newStr)`), 截取子字符...
为了简化这些操作并提高代码的可读性和可维护性,通常会编写一个专门的字符串工具类(如`StringUtil`)。此类封装了一系列用于处理字符串的方法,如检查字符串是否为空、字符串转换、字符串比较等。下面将详细介绍`...
在Java中,我们可以使用`java.util.regex`包中的`Pattern`和`Matcher`类来匹配和操作符合特定模式的字符串。对于提取括号内的内容,一个简单的正则表达式可以是`\((.*?)\)`,它匹配一对括号,并用`.*?`非贪婪地捕获...
在Java中,有许多内置的工具类,如`java.lang.String`、`java.util.Date`,以及第三方库如Apache Commons Lang和Google Guava等。下面我们将详细探讨这些工具类在字符串、日期、JDBC和XML解析等方面的使用。 1. **...
在Java编程语言中,字符串(String)是至关重要的数据类型,用于存储和操作文本。字符串类提供了丰富的API,使得处理字符串变得高效且灵活。本篇将深入探讨Java中的字符串、正则表达式及其在实际编程中的详细实例代码...
接下来是字符串工具类。Java中,`java.lang.String`类本身提供了丰富的操作方法,如`isEmpty()`用于判断字符串是否为空,`trim()`用于去除字符串两端的空白字符。但有时我们还需要更复杂的功能,这时可以借助Apache ...
类似于Java或Python中的split方法,`StringUtil`可能提供了一个功能,可以将一个字符串按照指定的分隔符拆分成一个字符串数组。这在处理CSV数据、日志文件或者任何基于特定分隔符的数据格式时非常有用。例如,你...
本话题聚焦于两个特定的工具类:`StringUtil`和`DatetimeUtil`,它们分别处理字符串操作和日期时间操作。 `StringUtil`类是一个典型的字符串处理工具类,它提供了以下两个关键功能: 1. **去除右侧空格**: 这个...