Java "JSON中无分隔符日期字符串处理"

Json 中日期类型数据处理,服务端传输的日期没有分隔符,一般格式就两种,[20151212121212]即yyyyMMddhhmmss和[121212]hhmmss

import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import java.util.Locale;

public class test {
    public static void main(String[] args)
    {
        String strDateTime="20150206201756";
        String strTime="201756";

        System.out.println(convJsonDateToString(strDateTime,"yyyy-MM-dd hh:mm:ss"));
        System.out.println(convJsonDateToString(strTime,"hhmmss","hh:mm:ss"));
    }
    public static String convJsonDateToString(String jsonDate,String stringTemplate){

        String resultString=null;
        try {
            Calendar cldCalendar=convToCalender(jsonDate, "yyyyMMddhhmmss");
            resultString=convToString(cldCalendar, stringTemplate);
        } catch (Exception e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        return resultString;
    }
    public static String convJsonDateToString(String jsonDate,String jsonTemplate,String stringTemplate){

        String resultString=null;
        try {
            Calendar cldCalendar=convToCalender(jsonDate, jsonTemplate);
            resultString=convToString(cldCalendar, stringTemplate);
        } catch (Exception e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        return resultString;
    }
    // 把指定格式的日期字符串转日期类型
    public static Calendar convToCalender(String str,String template){

        SimpleDateFormat sdf;
        Date date;
        Calendar cltResult = Calendar.getInstance();

        sdf = new SimpleDateFormat(template, Locale.getDefault());
        try {
            date = sdf.parse(str);

            cltResult.setTime(date);

        } catch (Exception ex) {
            // TODO Auto-generated catch block
            ex.printStackTrace();
        }

        return cltResult;
    }
    // 把日期转指定格式字符串
    public static String convToString(Calendar cld,String template){
        String resultString=null;
        try {
            Date date=cld.getTime();
            SimpleDateFormat sdf=new SimpleDateFormat(template,Locale.getDefault());
            resultString=sdf.format(date);
        } catch (Exception e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        return resultString;
    }
}
时间: 2024-12-11 21:15:03

Java "JSON中无分隔符日期字符串处理"的相关文章

java 8中新的日期和时间API

java 8中新的日期和时间API 使用LocalDate和LocalTime LocalDate的实例是一个不可变对象,它只提供了简单的日期,并不含当天的时间信息.另外,它也不附带任何与时区相关的信息 LocalDate实例提供了多种方法来读取常用的值,比如年份,月份,星期几等 LocalDate date = LocalDate.of(2014,3,18); int year = date.getYear(); Month month = date.getMonth(); int day =

java parse 带英文单词的日期字符串 转 date (转化新浪微博api返回的时间)

拂晓风起 专注前端技术cocos2d.js.flash.html5,联系:[email protected].如果读者要找腾讯工作机会,请不吝推荐简历. 博客园 首页 新闻 新随笔 联系 管理 订阅 随笔- 227  文章- 0  评论- 336 java parse 带英文单词的日期字符串 转 date (转化新浪微博api返回的时间) 大家一般很少格式化或者parse带有Sun Nov等英文单词的字符串. 如果格式化英文月份的字符串,记得带上Locale.US参数,否则,JRE会按照当前地区

js,java,jstl多分隔符分割字符串

1.js多分隔符 分割字符串 var username = “zhao,li;wang.liu”: var arr = str.split(/;|:|,|,|./);  括号里面可以写多分割符号,中英文均可,注意每个分割符之间用"|"隔开, 如果是特殊分割符号,如点,加号,必须使用转义字符表示 如 str.split(".") 应该写成 str.split([.]); 2.java多分隔符 分割字符串 String[] name = str.split("

springboot中返回值json中null转换空字符串

在实际项目中,我们难免会遇到一些无值.当我们转JSON时,不希望这些null出现,比如我们期望所有的null在转JSON时都变成“”“”这种空字符串,那怎么做呢? Jackson中对null的处理 1 @Configuration 2 public class JacksonConfig { 3 @Bean 4 @Primary 5 @ConditionalOnMissingBean(ObjectMapper.class) 6 public ObjectMapper jacksonObjectM

Java 用多个分隔符分隔字符串

一.split: String str = "tom,jack,lucy"; String[] nameArray = str.split(","); 操作字符串数据即可. 当我们遇到 需要用多个字符来分隔字符串时,就要注意了 String str = "打印机,钟表?自行车.雨伞??收音机,电脑"; //利用+表示一个或多个 String temp[] = str.split(",|\\.|\\?+"); for(Strin

java parse 带英文单词的日期字符串(转化新浪微博api返回的时间)

String str = "Sun Sep 23 00:32:57 +0800 2012"; SimpleDateFormat dateFormat = new SimpleDateFormat("EEE MMM dd HH:mm:ss z yyyy", Locale.US); try { dateFormat.parse(str); } catch (ParseException e) { // TODO Auto-generated catch block e.

Java快速获取格式化的日期字符串

1.使用Date对象 String dateStr = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss").format(new Date()); 2.使用Calendar对象 String dateStr = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss").format(Calendar.getInstance().getTime()); 3.使用LocalDateTime对象 Strin

在Java 8中如何处理日期和时间

常有人问我学习一个新库的最好方式是什么?我的答案是在实际项目中使用它.项目中有很多真正的需求驱使开发者去发掘并学习新库.简单得说就是任务驱动学习探 索.这对Java 8新日期时间API也不例外.我创建了20个基于任务的实例来学习Java 8的新特性.从最简单创建当天的日期开始,然后创建时间及时区,接着模拟一个日期提醒应用中的任务--计算重要日期的到期天数,例如生日.纪念日.账单 日.保费到期日.信用卡过期日等.示例 1.在Java 8中获取今天的日期Java 8 中的 LocalDate 用于表

20 个案例教你在 Java 8 中如何处理日期和时间?

前言 前面一篇文章写了<SimpleDateFormat 如何安全的使用?>, 里面介绍了 SimpleDateFormat 如何处理日期/时间,以及如何保证线程安全,及其介绍了在 Java 8 中的处理时间/日期默认就线程安全的 DateTimeFormatter 类.那么 Java 8 中该怎么样处理生活中常见的一些日期/时间呢?比如:计算一周后的日期:计算一年前或一年后的日期:检查闰年等. 接下来创建了 20 个基于任务的实例来学习 Java 8 的新特性.从最简单创建当天的日期开始,然