`
菜鸟级JAVA
  • 浏览: 96277 次
  • 性别: Icon_minigender_1
  • 来自: 湖南
社区版块
存档分类
最新评论

java String工具类

阅读更多
package util;

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Random;

/**
* 字符串处理相关工具类
*
* @author
* @date
* @version 1.0
*/
public class StringUtil {

/**
* 判断字符串是否为空或null,为空返回true
*
* @param str
*            待判定字符串
* @return 是否为空或null
*/
public static boolean isEmpty(String str) {
return (str == null || "".equals(str.trim()));
}

/**
* 对象转为string格式,为空时,转为默认带入字符串
*
* @param obj
*            待转对象
* @param defaultStr
*            默认字符串
* @return 字符串
*/
public static String objToString(Object obj, String defaultStr) {
if (obj == null || obj.toString().equals("")) {
return defaultStr;
} else {
return obj.toString();
}
}

/**
* 判断字符串长度是否合法
*
* @param instr
*            输入字符串
* @param minLength
*            最小长度
* @param maxLength
*            最大长度
* @return true=合法
*/
public static boolean chackStringLength(String instr, int minLength, int maxLength) {
return !(instr.length() < minLength || instr.length() > maxLength);
}

/**
* 判断字符串是否全是数字
*
* @param str
*            输入字符串
* @return true=全是数字
*/
public static boolean isNum(String str) {
if (null == str) {
return false;
}
return str.matches("\\d+");
}

/**
* 字符串长度处理,过长切除,不足补空格.
*
* @param str
*            传入字符串
* @param length
*            传入指定长度(字节数)
* @param defaultStr
*            默认字符
* @param isRight
*            是否右补齐
* @return 返回指定长度的字符串
*/
public static String supplyString(String str, int length, String defaultStr, boolean isRight) {
if (str != null) {
int len = str.length();
if (len < length) {
if (isRight) {
for (int i = 0; i < (length - len); i++) {
str = str + defaultStr;
}
} else {
for (int i = 0; i < (length - len); i++) {
str = defaultStr + str;
}
}
} else {
str = str.substring(0, length);
}
} else {// 空字符串
if (isRight) {
for (int i = 0; i < length; i++) {
str = str + defaultStr;
}
} else {
for (int i = 0; i < length; i++) {
str = defaultStr + str;
}
}
}
return str;
}

/**
* 字符串倒转
*
* @param str
*            输入字符串
* @return 倒转后字符串
*/
public static String reverseStr(String str) {
StringBuilder strbuff = new StringBuilder();
for (int i = str.length() - 1; i >= 0; i--) {
strbuff.append(str.charAt(i));
}
return strbuff.toString();
}

/**
* 生成随机几位数字
*
* @param k
*            生成位数
* @return
*/
public static String createRand(int k) {
Random random = new Random();
String sRand = "";
for (int i = 0; i < k; i++) {
String rand = String.valueOf(random.nextInt(10));
sRand += rand;
}
return sRand;
}

/**
* 判断字符串起止时间格式
*
* @param time
*            如:12002400
* @return
*/
public static boolean checkTime(String time) throws Exception {
boolean result = true;
// 按逗号截取
String[] sptime = time.trim().split(",");
String lastsp = time.substring(time.length() - 1, time.length());
String firstsp = time.substring(0, 1);
for (int i = 0; i < sptime.length; i++) {
// 判断首字符是否为空
if (StringUtil.isEmpty(firstsp)) {
result = false;
break;
}
// 判断最后个时间串是否为,号
if (lastsp.equals(",")) {
result = false;
break;
}
// 判断是时间串否为数字
if (StringUtil.isNum(sptime[i]) && sptime[i].length() == {
String gettime = sptime[i];
String starttime = gettime.substring(0, 4);
String endtime = gettime.substring(4,;
// 判断时间格式是否属于24小时内
if (Integer.parseInt(starttime) > 2400 || Integer.valueOf(endtime) > 2400) {
result = false;
break;
}
// 判断起始时间是否大于截止时间
if (Integer.valueOf(starttime) >= Integer.valueOf(endtime)) {
result = false;
break;
}
} else {
result = false;
break;
}
}
return result;
}

/* String类型到Date类型转化 */

public static java.util.Date StringToDate(String strDate, int type) {
java.util.Date result = null;
String format = "yyyy-MM-dd";
if (type == 0) {
format = "yyyy-MM-dd";
}
if (type == 1) {
format = "yyyy/MM/dd";
} else if (type == 2) {
format = "yyyyMMdd";
} else if (type == 21) {
format = "yyyyMM";
} else if (type == 3) {
format = "MM/dd/yy";
} else if (type == 4) {
format = "yyyy-MM-dd HH:mm:ss";
} else if (type == 5) {
format = "yyyyMMddHHmm";
}
SimpleDateFormat formatter = new SimpleDateFormat(format);
if (strDate != null && !strDate.equals("")) {
try {
result = formatter.parse(strDate);
} catch (ParseException ex) {
result = null;
}
}
return result;
}

/* Date类型转化到String类型 */
public static String DateToString(java.util.Date date, int type) {
String result = null;
String format = "yyyy-MM-dd";
if (type == 0) {
format = "yyyy-MM-dd";
}
if (type == 1) {
format = "yyyy/MM/dd";
} else if (type == 2) {
format = "yyyyMMdd";
} else if (type == 21) {
format = "yyyyMM";
} else if (type == 3) {
format = "MM/dd/yy";
} else if (type == 4) {
format = "yyyy-MM-dd HH:mm:ss";
} else if (type == 5) {
format = "yyyyMMddHHmmss";
}
SimpleDateFormat formatter = new SimpleDateFormat(format);
if (date != null) {
result = formatter.format(date);
} else {
result = "";
}
return result;
}

/**
* 判断是否为整数
*
* @param s
* @return
*/
public static boolean isNumeric(String s) {
if ((s != null) && (s != ""))
return s.matches("^[0-9]*$");
else
return false;
}

/**
* 判断字符串是否由字母和数字和|号组成
*
* @param str 输入字符串
* @return
*/
public static boolean isNumOrLetter(String str) {
if (null == str) {
return false;
}
return str.matches("^[0-9a-zA-Z|]+$");
}
}
分享到:
评论

相关推荐

    javaString工具类

    String工具类

    java工具类(String)

    Java中的字符串处理是编程工作中非常常见且重要的任务,而String工具类则提供了许多方便实用的方法,使得我们在处理字符串时能够更加高效。以下是对Java String工具类的详细解析: 首先,了解Java中的String类。在...

    30个java工具类

    [工具类] CookieCounter .java.txt [工具类] 验证码img .jsp.txt [工具类] Java中计算任意两...[工具类] 框架StringUtil.java [工具类] 时间Time.java [工具类] 时间工具TimeUtil.java [工具类] 连数据库ConnectDB.java

    java Ffmpeg 工具类 java Ffmpeg 工具类 java Ffmpeg 工具类

    public static Boolean videoToMp4(String oldPath,String newFilePath) { File source = new File(oldPath); File target = new File(newFilePath); logger.info("转换前的路径:"+oldPath); logger.info("转换后的...

    【强2】30个java工具类

    使用java工具类可有效的提高开发效率! 没有CSDN积分的朋友到这里源头下载:...[工具类] 框架StringUtil.java [工具类] 时间Time.java [工具类] 时间工具TimeUtil.java [工具类] 连数据库ConnectDB.java

    java mail工具类

    创建JavaMail工具类时,可以考虑将常见的邮件操作封装为静态方法,如`sendEmail(String from, String to, String subject, String body)`,这样方便其他模块调用。 12. **测试和调试**: 开发完成后,应进行充分...

    java工具类去掉字符串String中的.点。android开发java程序员常用工具类

    java工具类去掉字符串String中的.点。android开发java程序员常用工具类。博文介绍:http://blog.csdn.net/qq_21376985/article/details/51482313

    Rabbitmq工具类,java工具类RabbitmqUtil

    `RabbitmqUtil` 是一个专门为Java开发者设计的工具类,简化了与RabbitMQ交互的复杂过程,使得开发者能够更快速、更方便地发送和接收消息。 首先,我们来详细了解一下`RabbitmqUtil`工具类的主要功能: 1. **连接...

    Java Https工具类,Java Https Post请求

    这个“Java Https工具类,Java Https Post请求”可能是一个自定义的类,用于简化发送HTTPS POST请求的过程。以下是对这个主题的详细讲解: 1. **HTTPS基础**: - HTTPS是在HTTP上添加了SSL/TLS(Secure Sockets ...

    java工具类 string转10进制sacii byte数组再转16进制字符数组再转16进制byte数组 string与BCD互转

    java工具类 : string转10进制sacii byte数组、 10进制sacii byte数组转16进制字符数组、 16进制字符数组转16进制byte数组、 string与BCD互转等方法,包含多个转换方法, 足够满足日常解包组包需求

    StringUtil.java工具类

    StringUtil工具类java学习的好东西!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!...

    java各种工具类-非常齐全

    Java是一种广泛使用的编程语言,其丰富的库和工具类极大地提升了开发效率。在Java中,工具类通常是封装了常见操作的静态方法集合,便于开发者在不同项目中复用。本资源包含了一系列全面的Java工具类,涵盖了多个核心...

    牛逼的java常用工具类

    在这个名为"牛逼的java常用工具类"的压缩包中,我们可以期待找到一些由经验丰富的开发者精心设计和优化的工具类,这些工具类能极大地提高开发效率,减少代码量,使程序更加健壮。下面,我们将详细探讨一些可能包含在...

    String封装工具类

    在Java中,Apache Commons Lang是一个常用的库,其中的StringUtils类就是这样一个强大的String工具类。它包含在`commons-lang3-3.0-beta.jar`中,这是一个开源项目,提供了大量对Java内置类的扩展。 Apache Commons...

    Java实现的Https请求工具类

    本篇文章将深入探讨如何在Java中实现一个用于处理HTTPS请求的工具类。 首先,要实现HTTPS请求,我们需要导入Java的`java.net`和`javax.net.ssl`包,这两个包提供了处理网络连接和SSL/TLS安全协议的类。以下是一些...

    java常用工具类汇总

    "Java常用工具类汇总"是一个集合了各种实用工具类的资源,旨在方便开发者在处理常见任务时提高效率。这个工具类库覆盖了字符串、文件、数组以及数学等多个方面,同时也提供了相应的API文档,使得开发者能够更好地...

    Java json工具类,jackson工具类,ObjectMapper工具类

    总结来说,`Java json工具类`如`Jackson`和`ObjectMapper`,以及开发者自定义的`JacksonUtils`工具类,是Java开发中处理JSON数据的关键工具。它们能够方便地将Java对象和JSON格式数据互相转换,同时提供了一系列高级...

    Java实体类字段生成工具类-将数据库表列字段转为Java实体类驼峰字段

    为了解决这个问题,开发了这个Java实体类字段生成工具类。 2、该工具类可以将数据库表列字段转化为对应的Java实体类字段。生成的实体类字段格式清晰易读,且符合Java命名规范。通过使用该工具类,可以大大提高开发...

    java转码工具类

    ### Java转码工具类知识点详解 #### 一、概述 在Java开发中,经常会遇到不同编码格式的文件处理问题,特别是在处理国际化应用时,字符集的兼容性尤为重要。本篇文章介绍了一个Java批量转换文件编码的工具类——`...

    java常用工具类

    "java常用工具类"这个主题涵盖了Java开发中常用的类和方法,这些工具类可以帮助我们简化编程工作,提高代码的可读性和可维护性。在Java中,`java.util`包就是这样一个包含大量工具类的包,提供了很多实用的功能。 1...

Global site tag (gtag.js) - Google Analytics