首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >把12小时格式的时间字符串转换为24小时格式的字符串

把12小时格式的时间字符串转换为24小时格式的字符串

原创
作者头像
程序员编程助手科技
发布2025-02-16 17:32:55
发布2025-02-16 17:32:55
4190
举报
文章被收录于专栏:Java技术Java技术
代码语言:txt
复制
  /**
     * 把12小时格式的时间字符串转换为24小时格式的字符串
     * input: 07:05:45PM
     * output: 19:05:45
     * input: 12:00:00PM
     * output:  00:00:00
     * @param lowFormatTimeStr
     * @return
     */
    public static String convertTimeFormate(String lowFormatTimeStr){
        if(lowFormatTimeStr==null){
            return null;
        }
        String trim = lowFormatTimeStr.trim();
        if (trim.isEmpty()){
            return null;
        }
        int length = trim.length();
        if (length!=10){
            return null;
        }
        String substring7 = trim.substring(0, 2);
        if (substring7.equals("00")){
            return null;
        }else {
            Integer i = Integer.valueOf(substring7);
            if (i>12){
                return null;
            }
        }
        String substring8 = trim.substring(3, 5);
        if (!(substring8.substring(0,1).equals("0"))){
            Integer i = Integer.valueOf(substring8);
            if (i>60){
                return null;
            }
        }
        String substring9 = trim.substring(6, 8);
        if (!(substring9.substring(0,1).equals("0"))){
            Integer i = Integer.valueOf("0");
            if (i>60){
                return null;
            }
        }
        for (int i = 0; i < trim.length(); i++) {
            char c = trim.charAt(i);
            if (trim.endsWith("PM")){
                continue;
            }else if(trim.endsWith("AM")){
                continue;
            }else {
                return null;
            }
        }
        String substring = trim.substring(0, 2);
        for (int i = 0; i < substring.length(); i++) {
            char c = substring.charAt(i);
            if (!Character.isDigit(c)){
                return null;
            }
        }
        String substring1 = trim.substring(2, 3);
        if (!substring1.equals(":")){
            return null;
        }
        String substring2 = trim.substring(3, 5);
        for (int i = 0; i < substring2.length(); i++) {
            char c = substring2.charAt(i);
            if(!Character.isDigit(c)){
                return null;
            }
        }
        String substring3 = trim.substring(5, 6);
        if(!substring3.equals(":")){
            return null;
        }
        String substring4 = trim.substring(6, 8);
        for (int i = 0; i < substring4.length(); i++) {
            char c = substring4.charAt(i);
            if (!Character.isDigit(c)){
                return null;
            }
        }
        String substring5 = trim.substring(0, 2);
        StringBuilder stringBuilder = new StringBuilder();
        if (trim.endsWith("PM")){
            String substring6 = substring5.substring(0, 1);
            Integer i=null;
            if (substring6.equals("0")){
                i = Integer.valueOf(substring5.substring(1));
            }else {
                i = Integer.valueOf(substring5);
            }
            if (i<12){
                i+=12;
            }else {
                i-=12;
            }
            if (i>=10){
                String s = String.valueOf(i);
                stringBuilder.append(s);
                stringBuilder.append(trim.substring(2,8));
            }else {
                StringBuilder stringBuilder1 = new StringBuilder();
                stringBuilder1.append(0);
                stringBuilder1.append(i);
                stringBuilder1.append(trim.substring(2,8));
                return stringBuilder1.toString();
            }
        }else {
            return trim.substring(0,8);
        }
        return stringBuilder.toString();
    }

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档