- 浏览: 80759 次
- 性别:
- 来自: 上海
文章分类
最新评论
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 977package com.common.util; i ... -
java ftp工具类
2015-01-28 14:33 1431package com.common.util; i ... -
java socket编程
2014-01-02 16:53 1181引用 /** * 工行实名认证处理方法 * ... -
Spring_Security_多页面登录配置教程
2011-08-08 10:13 17209本文转自百度文库:http://wenku.baidu.com ... -
从数据库中读取带换行的字符串
2011-06-01 09:25 7170数据库中的workExp(工作经历)字段是带换行或回车的字符串 ... -
向已获取的list中插入值
2011-08-08 11:23 1994public List getWfList(String id ... -
正则表达式常用验证方法
2011-05-26 15:02 1477function isDigit(s) { var patr ... -
java常用操作方法(六) 远程文件操作 RemoteFileUtil
2011-05-26 14:58 4474package com.jinqiao.util; impo ... -
java常用操作方法(五)金额 MoneyUtil
2011-05-26 14:57 2044package com.jinqiao.util; impo ... -
java常用操作方法(四)数学计算操作 MathUtil
2011-05-26 14:55 8877package com.jinqiao.util; impo ... -
java常用操作方法(二)文件操作类 FileUtil
2011-05-26 14:50 4516package com.jinqiao.util; impo ... -
java常用操作方法(一)日期工具类 DateUtil
2011-05-26 14:46 3347/* * Created on 2011-5-26 * ...
相关推荐
在Java开发类库中,提供了很多工具类,我们即将学习最常见的工具类,比如对日期的操作,对集合的操作等。具体更多的工具类,请参考JavaDoc文档。 2. java.util.Date类 Date类包装了毫秒值,毫秒值表示自1970年1月1...
< java.lang >String字符串:★★★☆ 71 < java.lang >StringBuffer字符串缓冲区:★★★☆ 73 < java.lang >StringBuilder字符串缓冲区:★★★☆ 74 基本数据类型对象包装类★★★☆ 75 集合框架:★★★★★,...
Java中的正则表达式是一种强大的文本匹配工具,它可以用来检查和操作字符串。在Java中,正则表达式的相关类都位于java.util.regex包中。 下面是一些Java中常用的正则表达式语法和使用方法: 匹配字符串模式: 使用...
以前写了一个java的正规表达式的java工具类,分享一下,有用到的欢迎下载使用。 如果你有常用的定义好的,且测试通过的正规表达式,欢迎跟贴,也让我享用一下 . 类中用到了 jakarta-oro-2.0.jar 包,请大家自己在 ...
Java访问权限控制,为Java操作文件、写入文件分配合适的权限,定义写到文件的信息、定义文件,输出到c:/hello.txt、写信息到文件、关闭输出流。 Java绘制图片火焰效果 1个目标文件 摘要:Java源码,图形操作,火焰...
字符串(java.lang.String类)的使用 90 字符串相等的判断 92 思考作业 93 上机作业 94 第四章 异常机制 95 导引问题 95 异常(Exception)的概念 96 异常分类 96 Error 97 Error和Exception的区别 97 Exception 97 ...
Java访问权限控制,为Java操作文件、写入文件分配合适的权限,定义写到文件的信息、定义文件,输出到c:/hello.txt、写信息到文件、关闭输出流。 Java绘制图片火焰效果 1个目标文件 摘要:Java源码,图形操作,火焰...
Java访问权限控制,为Java操作文件、写入文件分配合适的权限,定义写到文件的信息、定义文件,输出到c:/hello.txt、写信息到文件、关闭输出流。 Java绘制图片火焰效果 1个目标文件 摘要:Java源码,图形操作,火焰...
Java访问权限控制,为Java操作文件、写入文件分配合适的权限,定义写到文件的信息、定义文件,输出到c:/hello.txt、写信息到文件、关闭输出流。 Java绘制图片火焰效果 1个目标文件 摘要:Java源码,图形操作,火焰...
Java访问权限控制,为Java操作文件、写入文件分配合适的权限,定义写到文件的信息、定义文件,输出到c:/hello.txt、写信息到文件、关闭输出流。 Java绘制图片火焰效果 1个目标文件 摘要:Java源码,图形操作,火焰...
Java访问权限控制,为Java操作文件、写入文件分配合适的权限,定义写到文件的信息、定义文件,输出到c:/hello.txt、写信息到文件、关闭输出流。 Java绘制图片火焰效果 1个目标文件 摘要:Java源码,图形操作,火焰...
设定字符串为“张三,你好,我是李四” 产生张三的密钥对(keyPairZhang) 张三生成公钥(publicKeyZhang)并发送给李四,这里发送的是公钥的数组字节 通过网络或磁盘等方式,把公钥编码传送给李四,李四接收到张三编码后...
6.1 字符串类String 108 实例79 创建字符串类 108 实例80 如何使用charAt()方法计算重复字符 109 实例81 按字母顺序比较大小 110 实例82 首尾相连 111 实例83 字符串间的比较 112 实例84 ...
6.1 字符串类String 108 实例79 创建字符串类 108 实例80 如何使用charAt()方法计算重复字符 109 实例81 按字母顺序比较大小 110 实例82 首尾相连 111 实例83 字符串间的比较 112 实例84 字符集...
6.1 字符串类String 108 实例79 创建字符串类 108 实例80 如何使用charAt()方法计算重复字符 109 实例81 按字母顺序比较大小 110 实例82 首尾相连 111 实例83 字符串间的比较 112 实例84 字符集的解码方法 113 实例...
15.4 java.util.StringTokenizer类 238 15.5 java.util.Calendar类 240 15.6 巩固练习 242 第16章 AWT程序设计 244 16.1 java.awt.Component类 244 16.2 java.awt.Container类 247 16.3 布局管理器 ...
Strings: 一个非常非常有用的字符串工具类: 提供 splitting,joining, padding 等操作。 七. Primitives: 扩展 JDK 中未提供的对原生类型(如int、char等)的操作, 包括某些类型的无符号的变量。 八. ...
6.1 字符串类String 108 实例79 创建字符串类 108 实例80 如何使用charAt()方法计算重复字符 109 实例81 按字母顺序比较大小 110 实例82 首尾相连 111 实例83 字符串间的比较 112 实例84 字符集的解码方法 113 实例...
6.1 字符串类String 108 实例79 创建字符串类 108 实例80 如何使用charAt()方法计算重复字符 109 实例81 按字母顺序比较大小 110 实例82 首尾相连 111 实例83 字符串间的比较 112 实例84 字符集的解码方法 ...