首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Android SimpleDateFormat在am和pm中返回点

基础概念

SimpleDateFormat 是 Android 中用于格式化和解析日期时间的类。它允许你定义自己的日期时间格式,并根据这些格式将日期时间转换为字符串,或者将字符串解析为日期时间。

相关优势

  • 灵活性:你可以自定义日期时间的格式。
  • 易用性:提供了丰富的日期时间处理方法。
  • 兼容性:广泛用于 Android 开发中。

类型

SimpleDateFormat 支持多种日期时间格式,包括但不限于:

  • yyyy-MM-dd HH:mm:ss
  • MM/dd/yyyy HH:mm:ss
  • HH:mm:ss a (这里的 a 表示上午/下午标记)

应用场景

在 Android 开发中,SimpleDateFormat 常用于以下场景:

  • 格式化日期时间显示在 UI 上。
  • 解析用户输入的日期时间字符串。
  • 处理服务器返回的日期时间数据。

问题描述

你提到 SimpleDateFormatampm 中返回点,这可能是由于格式化字符串设置不正确导致的。

原因

默认情况下,SimpleDateFormata 标记会返回 AMPM,而不是点。如果返回的是点,可能是因为格式化字符串被错误地设置为 hh:mm:ss. 或其他类似的形式。

解决方法

确保使用正确的格式化字符串。以下是一个示例代码,展示如何正确使用 SimpleDateFormat 来格式化和解析日期时间:

代码语言:txt
复制
import java.text.SimpleDateFormat;
import java.util.Date;

public class SimpleDateFormatExample {
    public static void main(String[] args) {
        // 创建一个 SimpleDateFormat 对象,指定格式为 "hh:mm:ss a"
        SimpleDateFormat sdf = new SimpleDateFormat("hh:mm:ss a");

        // 获取当前时间
        Date now = new Date();

        // 格式化当前时间为字符串
        String formattedTime = sdf.format(now);
        System.out.println("Formatted Time: " + formattedTime);

        // 解析字符串为日期时间
        try {
            Date parsedDate = sdf.parse(formattedTime);
            System.out.println("Parsed Date: " + parsedDate);
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}

参考链接

通过使用正确的格式化字符串,你可以确保 SimpleDateFormat 正确地返回 AMPM,而不是点。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

AndroidCalendar类的用法总结

Calendar是Android开发需要获取时间时必不可少的一个工具类,通过这个类可以获得的时间信息还是很丰富的,下面做一个总结,以后使用的时候就不用总是去翻书或者查资料了。...Log.i("MainActivityFilter", "今天本月的第" + c.get(Calendar.DAY_OF_WEEK_IN_MONTH) + "周"); 获得今天是周几,这里不能直接将返回值当做周几...); 但现在其实是下午三,所以需要区分是上午还是下午 if (c.get(Calendar.AM_PM) == Calendar.AM) { Log.i("MainActivityFilter...Calendar.PM来帮助判断是上午还是下午,如果c.get(Calendar.AM_PM)获取到的值Calendar.AM相等就是上午,如果Calendar.PM相等就是下午 Calendar...-1,如果要靠后一些,返回1,如果相等,返回0 d = (Calendar) c.clone(); Log.i("MainActivityFilter", "比较的结果:" + c.compareTo

2.3K20

Android技能树 — 时间相关总体小结

说个简单的,比如现在要问一首歌的时长,后台返回给你00:03:06,然后你代码要用到总秒数时长,这时候问你怎么把这个变成具体的秒数。...的差值,也就知道了当前Date代表的时间) 所以Calendar获取时间的方法上,不仅提供了获取时间返回long类型的方法,还提供了返回Date对象的方法 获取时间: Calendar cl = Calendar.getInstance...还可以使用借助 ParsePosition FieldPosition 的解析格式化方法形式来逐步地解析字符串的各部分。 对齐任意特定的字段,或者找出字符串屏幕上的选择位置。...Number 2 D 年中的天数 Number 189 d 月份的天数 Number 10 F 月份的星期 Number 2 E 星期中的天数 Text Tuesday; Tue a Am/pm...标记 Text PM H 一天的小时数(0-23) Number 0 k 一天的小时数(1-24) Number 24 K am/pm 的小时数(0-11) Number 0 h am/pm 的小时数

85330
  • Java SimpleDateFormat 【 parse format 】【转换时间格式】

    SimpleDateFormat ,有以下特定的规则: G 年代标志符     y 年     M 月     d 日     h 时(在上午或者下午 12小时制)     H 时(一天...     a 上午 / 下午标记符     k 时(一天的、24小时制)     K 时(在上午或者下午、12小时制)      下面这题为例(SDUT 2246): 对于日期的常用格式,中国常采用格式的是...对于时间的格式,则常有12小时制24小时制 的表示方法,24小时制用0-24来表示一天的24小时,而12小时制只采用1-12表示小时,再加上am/pm来表示上午或下午,比如”17:30:00”是采用...注意12:00:00pm表示中午12,而12:00:00am 表示凌晨12。...其中时间格式的那个  Locale.US , 不要忘记了那个,变成 US 是可以让上下午变成 am 或者 pm

    83010

    Android关于获取时间的记录(小结)

    Android的时间获取做个记录,以下为结果! ?...,类Date讨论了关于系统时间UTC时间产生差异的原因,可自行观看!...有科学报道说,地球漫长的公转其实是缓慢的接近太阳,不管是否属实,自转公转会产生一些变化也是不可避免的,UTC就是正确测量时间的规则,当测量到需要校正时间时,会以毫秒为单位进行调整,称之为闰秒(leap.../pm marker,1+ H = Hour in day (0-23),1+ k = Hour in day (1-24),1+ K = Hour in am/pm (0-11),1+ h =...’字符’表示在年月日等数据外的部分,如分隔符 SimpleDateFormat类的时间格式定制包括年月日等数据的表现形式,连接符,日期格式的描述,如Time zone,AM/PM,AD/BC。。。

    99820

    calendar类常用方法_设计一个日期类date

    当前月中的第几个星期 Calendar.AM_PM AM_PM中午之前还是中午之后,中午12之前返回0,中午12(包括12)之后返回1 Calendar.JANUARY 1月 Calendar.FEBRUARY...常用方法 常用方法就是get、setadd方法,它们的API说明如下: 方法 说明 int get(int field) 用于获取日历字段的值,返回值是int类型,其中field参数的值可以是Calendar.YEAR...int compareTo(Calendar anotherCalendar) 使用例如:c3.compareTo(c4),如果比较c3c4,如果c3...System.out.println(calendar.get(Calendar.DAY_OF_WEEK_IN_MONTH));// 当前月中的第几个星期 System.out.println("Calendar.AM_PM...=" + calendar.get(Calendar.AM_PM));// AM_PM中午之前还是中午之后,中午12之前返回0,中午12(包括12)之后返回1 System.out.println

    64310

    JavaApi高级编程(四)Date类以及如何使用

    与toLocaleString()toString()方法一样,以上这些字符串格式方法的输出也是因浏览器而异的,因此没有哪一个方法能够用来在用户界面显示一致的日期信息。...某地进入夏令时的情况下,这个值会有所变化  4、日期时间模式         1、字母  日期或时间元素  表示  示例           2、y  年  Year  1996; 96  ... 2           9、E  星期中的天数  Text  Tuesday; Tue           10、a  Am/pm 标记  Text  PM           11、H  一天的小时数...(0-23)  Number  0           12、k  一天的小时数(1-24)  Number  24           13、K  am/pm 的小时数(0-11)  Number... 0           14、h  am/pm 的小时数(1-12)  Number  12           15、m  小时中的分钟数  Number  30           16

    1.8K20

    Android技能树 — 时间相关总体小结

    说个简单的,比如现在要问一首歌的时长,后台返回给你00:03:06,然后你代码要用到总秒数时长,这时候问你怎么把这个变成具体的秒数。...) 所以Calendar获取时间的方法上,不仅提供了获取时间返回long类型的方法,还提供了返回Date对象的方法 获取时间: Calendar cl = Calendar.getInstance(...还可以使用借助 ParsePosition FieldPosition 的解析格式化方法形式来逐步地解析字符串的各部分。 对齐任意特定的字段,或者找出字符串屏幕上的选择位置。...Number 2 D 年中的天数 Number 189 d 月份的天数 Number 10 F 月份的星期 Number 2 E 星期中的天数 Text Tuesday; Tue a Am/pm...标记 Text PM H 一天的小时数(0-23) Number 0 k 一天的小时数(1-24) Number 24 K am/pm 的小时数(0-11) Number 0 h am/pm 的小时数

    14921

    Java 时间格式化(java如何格式化一个日期)

    就象JDK 1.1一样, Date 类实际上只是一个包裹类, 它包含的是一个长整型数据, 表示的是从GMT(格林尼治标准时间)1970年, 1 月 1日00:00:00这一刻之前或者是之后经历的毫秒数...一、创建一个日期对象 让我们看一个使用系统的当前日期时间创建一个日期对象并返回一个长整数的简单例子....注意到这里我们使用了常量 DAY_OF_WEEK FRIDAY来增强代码的可读性. add 方法让我们能够日期上加上数值. 润年的所有复杂的计算都由这个方法自动处理..../pm marker Text PM H Hour in day (0-23) Number 0 k Hour in day (1-24) Number 24 K Hour in am/pm (...0-11) Number 0 h Hour in am/pm (1-12) Number 12 m Minute in hour Number 30 s Second in minute Number

    6.3K30

    使用SimpleDateFormat的时候小心

    2、使用calb解析好的日期数据设置calendar; 3、重置日期对象cal的属性值; 4、使用calb属性设置cal; 5、返回设置好的cal对象; 从上面步骤可知步骤3、4、5操作不是原子性操作...,当多个线程调用parse方法时候比如线程A执行了步骤3、4也就是设置好了cal对象,执行步骤5前线程B执行了步骤3清空了cal对象,由于多个线程使用的是一个cal对象,所以线程A执行步骤5返回的就可能是被线程...新增了DateTimeFormatter,由DateTimeFormatter的静态方法ofPattern()构建日期格式,LocalDateTimeLocalDate等一些表示日期或时间的类使用parse...format方法把日期字符串做转换。...Date进行时间操作。

    24610
    领券