因为需求,只写了年月日时的自动转换。
public static Date convertStringToDate(String time) { String separator_yM = ""; String separator_Md = ""; String separator_dH = ""; String yyyy = ""; String MM = ""; String dd = ""; String HH = ""; Pattern pattern = Pattern .compile("(\\d{4})([^\\d]?)(\\d{1,2})([^\\d]?)(\\d{1,2})([^\\d]?)(\\d*)$"); Matcher matcher = pattern.matcher(time); if (matcher.find()) { System.out.println(matcher.group(0)); yyyy = matcher.group(1); separator_yM = matcher.group(2); MM = matcher.group(3); separator_Md = matcher.group(4); dd = matcher.group(5); separator_dH = matcher.group(6); HH = matcher.group(7); System.out.println(yyyy + separator_yM + MM + separator_Md + dd + separator_dH + HH); } if(yyyy == null || yyyy.equals("") || MM == null || MM.equals("") || dd == null || dd.equals("")) { return null; } String formateStr = "yyyy" + separator_yM + repeat("M", MM.length()) + separator_Md + repeat("d", dd.length()) + separator_dH + repeat("H", HH.length()); System.out.println("formateStr->" + formateStr); SimpleDateFormat formate = new SimpleDateFormat(formateStr); formate.setLenient(false); Date result = null; try { result = formate.parse(time); } catch (ParseException e) { } return result; } public static String repeat(String s,int counts) { int len = s.length(); StringBuilder builder = new StringBuilder(len * counts); for(int i=0; i<counts; i++){ builder.append(s); } return builder.toString(); }
测试:
public static void main(String[] args) { String s = "2014 9/23:7"; SimpleDateFormat formate = new SimpleDateFormat("yyyy-MM-dd-HH"); Date d = convertStringToDate(s); if(d != null) { System.out.println(formate.format(d)); } else { System.out.println(d); } }
-----输出
2014 9/23:7
2014 9/23:7
formateStr->yyyy M/dd:H
2014-09-23-07
-----
String s = "2014-9/23-7";
---输出
2014-09-23-07
String s = "2014-9/23-7";
---输出
2014-09-23-07
String s = "2014-9/31-7";
---输出
null
String s = "2014-9-ss-7";
---输出
null
其他自己去试吧。
相关推荐
/** * 作用:将字符串转化为日期类型 * @param operDate :当前要进行操作的日期 * @param type :希望通过操作返回的日期类型 * @return */
一个json相互转换的万能java类... * 将java对象转换成json字符串,并设定日期格式 * @param javaObj * @param dataFormat * @return */ /** *//** * JSON 时间解析器具 * @param datePattern * @return */
在开发应用中经常会使用到java string 转date这种不是很常见的做法,本文将以此问题提供详细解决方案,需要了解的朋友可以参考下
java.util 包含 collection 框架、遗留的 collection 类、事件模型、日期和时间设施、国际化和各种实用工具类(字符串标记生成器、随机数生成器和位数组)。 java.util.concurrent 在并发编程中很常用的实用工具类...
提供了很丰富的java工具类,包括字符串、数字、日期、文件、图像、编码解码、校验工具、文档操作等。 主要分为以下几种: - 1.通用操作类,例如String、数字、日期、各种校验等 - 2.文档操作,excel、pdf等 - 3.加密...
java.util 包含 collection 框架、遗留的 collection 类、事件模型、日期和时间设施、国际化和各种实用工具类(字符串标记生成器、随机数生成器和位数组)。 java.util.concurrent 在并发编程中很常用的实用工具类。...
提供了很丰富的java工具类,包括字符串、数字、日期、文件、图像、编码解码、校验工具、文档操作等。 主要分为以下几种: - 1.通用操作类,例如String、数字、日期、各种校验等 - 2.文档操作,excel、pdf等 - 3.加密...
提供了很丰富的java工具类,包括字符串、数字、日期、文件、图像、编码解码、校验工具、文档操作等。 主要分为以下几种: - 1.通用操作类,例如String、数字、日期、各种校验等 - 2.文档操作,excel、pdf等 - 3.加密...
设定字符串为“张三,你好,我是李四” 产生张三的密钥对(keyPairZhang) 张三生成公钥(publicKeyZhang)并发送给李四,这里发送的是公钥的数组字节 通过网络或磁盘等方式,把公钥编码传送给李四,李四接收到...
设定字符串为“张三,你好,我是李四” 产生张三的密钥对(keyPairZhang) 张三生成公钥(publicKeyZhang)并发送给李四,这里发送的是公钥的数组字节 通过网络或磁盘等方式,把公钥编码传送给李四,李四接收到...
提供了很丰富的java工具类,包括字符串、数字、日期、文件、图像、编码解码、校验工具、文档操作等。 主要分为以下几种: - 1.通用操作类,例如String、数字、日期、各种校验等 - 2.文档操作,excel、pdf等 - 3.加密...
#是否在日志记录前加日期时间字符串,取值0或1(立即生效) isAddDateTimeStringToHead=1 #当isAddDateTimeStringToHead为1时有效,表示时间串的格式,必须为java认识的时间格式;特别的,如果为“UNIX_TIMESTAMP”...
java.util 包含 collection 框架、遗留的 collection 类、事件模型、日期和时间设施、国际化和各种实用工具类(字符串标记生成器、随机数生成器和位数组)。 java.util.concurrent 在并发编程中很常用的实用工具类。...
提供了很丰富的java工具类,包括字符串、数字、日期、文件、图像、编码解码、校验工具、文档操作等。 主要分为以下几种: - 1.通用操作类,例如String、数字、日期、各种校验等 - 2.文档操作,excel、pdf等 - 3.加密...
java.util 包含 collection 框架、遗留的 collection 类、事件模型、日期和时间设施、国际化和各种实用工具类(字符串标记生成器、随机数生成器和位数组)。 java.util.concurrent 在并发编程中很常用的实用工具类...
提供了很丰富的java工具类,包括字符串、数字、日期、文件、图像、编码解码、校验工具、文档操作等。 主要分为以下几种: - 1.通用操作类,例如String、数字、日期、各种校验等 - 2.文档操作,excel、pdf等 - 3.加密...
J2C 将 Java 代码转成 C++ 代码,这是源码级别的转换,输出的 C++ 代码是有效的代码。 OSGi 分布式通讯组件 R-OSGi R-OSGi 是一套适用于任意满足 OSGi 架构的分布式通讯组件。它以 jar 的形式发布,部署容易,使用...
J2C 将 Java 代码转成 C++ 代码,这是源码级别的转换,输出的 C++ 代码是有效的代码。 OSGi 分布式通讯组件 R-OSGi R-OSGi 是一套适用于任意满足 OSGi 架构的分布式通讯组件。它以 jar 的形式发布,部署容易,使用...
J2C 将 Java 代码转成 C++ 代码,这是源码级别的转换,输出的 C++ 代码是有效的代码。 OSGi 分布式通讯组件 R-OSGi R-OSGi 是一套适用于任意满足 OSGi 架构的分布式通讯组件。它以 jar 的形式发布,部署容易,使用...
字符串处理工具类。 SystemIntentUtil.java 系统Intent工具类,常用的系统Intent跳转函数,如:打电话、发短信等。 示例代码: - NetWork HttpDataRequest ...