首页
学习
活动
专区
工具
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,而不是点。

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

相关·内容

Android中Calendar类的用法总结

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.4K20

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 中的小时数

86530
  • 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 。

    97310

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

    当前月中的第几个星期 Calendar.AM_PM AM_PM是在中午之前还是在中午之后,在中午12点之前返回0,在中午12点(包括12点)之后返回1 Calendar.JANUARY 1月 Calendar.FEBRUARY...常用方法 常用方法就是get、set和add方法,它们的API说明如下: 方法 说明 int get(int field) 用于获取日历字段的值,返回值是int类型,其中field参数的值可以是Calendar.YEAR...int compareTo(Calendar anotherCalendar) 使用例如:c3.compareTo(c4),如果比较c3和c4,如果c3返回-1,如果c3==c4则返回0,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

    65910

    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.9K20

    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 中的小时数

    15421

    使用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()构建日期格式,LocalDateTime和LocalDate等一些表示日期或时间的类使用parse...和format方法把日期和字符串做转换。...和Date进行时间操作。

    26410

    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.4K30

    Android点九图总结以及在聊天气泡中的使用

    注意:这种图片格式只能被使用于Android开发。在ios开发中,可以在代码中指定某个点进行拉伸,而在Android中不行,所以在Android中想要达到这个效果,只能使用点九图。...Android SDK中,如今被集成到了Android studio中,它实际上也是在图片边缘画线,但是在工具中只能在边缘画,且只能画黑线,这样便减少了误操作的可能性。...并且在Draw9patch中可以预览结果。 注意:图片四个角的像素点不要画上黑线,否则Android无法识别。 边缘黑线绘制方法 优缺点 ps等p图工具 1. 设计人员可以直接出图2....1.4 Android 点九图的基本使用 Android中使用点九图,主要有三种形式,使用res文件夹中的点九图,使用assets文件夹中的点九图以及使用网上拉取的点九图,下面分别看看它们如何使用。...接下来说说这9个步骤中的遇到问题: 步骤2中,给9点图画黑线,必须是纯黑色像素,且图片的四个角必须为透明像素点,否则Android会无法识别,且在步骤3中将无法转换。

    5.8K42
    领券