标签: android-date

如何在Android中将日期时间从一种格式转换为另一种格式?

我想将日期和时间从"2014-11-25 14:30"格式转换为"2014年11月25日下午2:30".有人可以告诉你怎么做吗?

谢谢!

android android-date android-calendar

1
推荐指数
1
解决办法
4600
查看次数

将字符串更改为Calendar对象值.

我有string date = "2014-09-11".

我想将此字符串设置为日历对象.

字符串值已经包含" - ".那么如何使用日期格式?

android android-layout android-date android-activity

1
推荐指数
1
解决办法
2437
查看次数

Android中两个日期之间的天数

我需要计算用户在EditText中输入的两个日期(两个日期也包括在内)之间的天数.我还需要检查这些天来的天气还是已经过去了.我该怎么做?

android android-date

1
推荐指数
1
解决办法
1万
查看次数

android/java 中两个日期与今天相比的百分比

如何在 android/java 中找到两个日期与今天相比的百分比?这个问题是基于这个问题

我想做这样的事情:

    Calendar c = Calendar.getInstance();
    yeartoday = c.get(Calendar.YEAR);
    monthtoday = c.get(Calendar.MONTH);
    daytoday = c.get(Calendar.DAY_OF_MONTH);
...

    Date datestart = getDate(styear,(stmonth-1),stday);
    Date dateend = getDate(year,(month-1),day);
    Date datetoday = getDate(yeartoday,monthtoday,daytoday);
    double percent = (((datetoday - datestart) / (dateend - datestart)) * 100);
...
public Date getDate(int year,int month,int day){
    Calendar calendar = Calendar.getInstance();
    calendar.set(Calendar.YEAR, year);
    calendar.set(Calendar.MONTH, month);
    calendar.set(Calendar.DAY_OF_MONTH, day);
    Date date = calendar.getTime();
    return date;
}
Run Code Online (Sandbox Code Playgroud)

java android date percentage android-date

1
推荐指数
1
解决办法
1223
查看次数

在 Kotlin 中对 JSON 数组中的日期及其值进行排序的有效方法

在使用 Kotlin 的 Android 应用程序开发中,这将是对 JSON 数组进行排序的有效方法,该数组将日期作为属性值的对象。

我想按日期对我的回复进行排序并选择最新创建的项目。例如,我的列表响应是

[
    {
        name : "Joseph"
        enrolled_at : "2019-12-17 14:16:51"
    },
    {
        name : "Infant"
        enrolled_at : "2019-12-20 10:06:22"
    },
    {
        name : "Raj"
        enrolled_at : "2020-02-10 07:19:16"
    }
]
Run Code Online (Sandbox Code Playgroud)

我想用“enrolled_at”属性日期对此进行排序,以获取最近注册的项目。最初的反应很大,所以我在这里无法得到真正的反应。

使用 Kotlin 对日期进行排序的有效方法是什么?尝试使用Kotlin 中的sortedWith和其他集合。寻找建议。

sorting android android-date kotlin

1
推荐指数
1
解决办法
2708
查看次数

使用 SimpleDateFormat 将 UTC 格式的字符串转换为 UTC 日期对象

我有一个UTC格式的日期时间字符串

并需要将此字符串转换为 DATE 对象而不进行任何格式更改。

目前,当我尝试将其转换为日期对象时,它会作为 GMT 格式的日期对象返回,如下图所示。

我使用SimpleDateFormat有一个限制,因为我还必须支持API<21

String newDateString = "2022-06-27 08:27:00 UTC";
DateFormat format = new SimpleDateFormat(Constants.EnumDateFormats.DATE_FORMAT7);//"yyyy-MM-dd HH:mm:ss 'UTC'"
                format.setTimeZone(java.util.TimeZone.getTimeZone("UTC"));
                Date date = format.parse(newDateString);
                System.out.println(date);//printing GMT formatted Date object but I need Date object in UTC format like 2022-06-27 08:27:00 UTC
Run Code Online (Sandbox Code Playgroud)

我已附上调试后的代码图像图像为了更好的理解。

java android date utc android-date

1
推荐指数
1
解决办法
225
查看次数

如何将String转换为Calendar对象?

为了在SQLite数据库中存储Calendar对象,我发现最简单的方法是将Calendar对象转换为字符串并将其作为文本存储在数据库中.

现在,问题在于从字符串中提取存储的日期.

如何解析包含Calendar对象的字符串并将其设置为Calendar值?

我的代码是:

    String CREATE_DOCTORS_TABLE = "CREATE TABLE " + TABLE_DOCTORS + "("
            + KEY_ID_DOC + " INTEGER PRIMARY KEY," + KEY_DOCTOR_NAME + " TEXT,"             
            + KEY_CLINIC_ADDRESS + " TEXT," + KEY_LAST_CHECKUP + " TEXT" + ");";
    db.execSQL(CREATE_DOCTORS_TABLE);       
Run Code Online (Sandbox Code Playgroud)

其中KEY_LAST_CHECKUP包含如下值:

java.util.GregorianCalendar[time=?,areFieldsSet=false,lenient=true,zone=Asia/Calcutta,firstDayOfWeek=1,minimalDaysInFirstWeek=1,ERA=1,YEAR=2013,MONTH=4,WEEK_OF_YEAR=29,WEEK_OF_MONTH=3,DAY_OF_MONTH=16,DAY_OF_YEAR=198,DAY_OF_WEEK=4,DAY_OF_WEEK_IN_MONTH=3,AM_PM=1,HOUR=4,HOUR_OF_DAY=16,MINUTE=19,SECOND=47,MILLISECOND=823,ZONE_OFFSET=19800000,DST_OFFSET=0]
Run Code Online (Sandbox Code Playgroud)

我用这种方式将它存储在数据库中:

values.put(KEY_LAST_CHECKUP, (doctor.getLastCheckUpDate().toString())); // last check up date
Run Code Online (Sandbox Code Playgroud)

现在,我如何从存储的字符串中检索DAY,MONTH和YEAR?

我在这里阅读有关如何将日期字符串转换为日历对象的方法: 如何将日期字符串转换为日期或日历对象?

但我的字符串不只是一个日期字符串.它还包含许多其他细节.

前进的最佳方式是什么?

java android calendar android-date android-calendar

0
推荐指数
1
解决办法
2651
查看次数

日历提供-12小时

Calendar c = Calendar.getInstance(); 
String myDateString = (String) DateFormat.format("yyyy-MM-dd hh:mm", c.getTime());

dateTv.setText(myDateString);
Run Code Online (Sandbox Code Playgroud)

输出是:

2014-02-13 04:31

小时实际上不是04,它是16,我的意思是它是在名词之后,而不是在午夜之后(早上4点),如果你知道我的意思.

为什么会发生这种情况以及如何解决这个问题?

编辑:

对于可爱的-1选民:

正如有人建议的那样:

  String myDateString = (String) DateFormat.format("yyyy-MM-dd HH:mm", c.getTime());
Run Code Online (Sandbox Code Playgroud)

这个解决方案给了我这个确切的String:

2014-02-13 HH:45

是.我的小时里有2个'H'字符.它只是一个H字符,而不是一个数字.

android android-date

0
推荐指数
1
解决办法
72
查看次数

如何在聊天消息的顶部显示日历日期?

我正在开发聊天应用程序,但我正在努力弄清楚如何在聊天消息的顶部显示日历日期; 例如,像这样:

聊天消息

带时间戳的另一张图片:

带时间戳的聊天消息

正如您在示例中看到的那样,日期显示在全新的一批文本消息之上.我想做同样的事情,仅针对与特定日期相关的一批消息.如果我有10月19日的消息,它会显示10月19日的消息,然后是10月20日的消息等等......这是与我类似的工作示例代码:

http://www.codeproject.com/Tips/897826/Designing-Android-Chat-Bubble-Chat-UI

代码的构造与我的相同,除了顶部显示的日期,这是我坚持的东西.我有时间戳显示每条消息,我只想以"2015年10月19日星期一"格式显示该批消息的日期; 从10月19日开始,只有一次在顶部,同样是过去和未来消息的日历日期,如图所示.有线索吗?谢谢!

android android-layout android-date android-fragments android-activity

0
推荐指数
1
解决办法
1万
查看次数

SimpleDateFormat提供了错误的一年

根据下图,当我使用item.takendateSimpleDateFormat

我得到了"2016年1月"而不是"2017年1月"

这里发生了什么?请指教.

在此输入图像描述

编辑

但是,当我使用cdate parse返回Date时,它的值从1月1日更改为1月2日

在此输入图像描述

android simpledateformat date-formatting android-date kotlin

0
推荐指数
1
解决办法
181
查看次数

DateUtils.getRelativeTimeSpanString返回格式化的日期字符串,而不是“前几小时/分钟”

我在尝试获取DateUtils.getRelativeTimeSpanString以返回其在Android中应该遇到的问题时遇到了严重的问题。

我在这里经历过每个类似的问题,而发布的解决方案都没有起作用或没有意义。

这是我的代码:

CharSequence relativeDate = 
DateUtils.getRelativeTimeSpanString(System.currentTimeMillis(), 
            currentNewsItem.getTimeInMilliseconds(), 
            DateUtils.HOUR_IN_MILLIS, DateUtils.FORMAT_ABBREV_RELATIVE);
            dateView.setText(relativeDate);
Run Code Online (Sandbox Code Playgroud)

currentNewsItem.getTimeInMilliseconds方法确实确实返回了很长的时间(例如,刚过去1521759734它看起来正确),并且getRelativeTimeSpanString将正确格式的日期字符串以“ 2018年3月23日”的格式传递给视图,因此它知道正确的日期。但是我需要它通过“ x小时前”或“ x分钟前”,而且我无法终生弄清楚为什么不是这样。

我已经检查了模拟器上的时间,并且问题出现在我的设备上,因此不是时区设置。

文档说,如果时间跨度大于7天,它将恢复为这样的日期字符串,但是我检查了过去的时间,因为旧时间已经过去,转换器网站显示这是4小时前的确切时间。此外,它显示的是正确的日期(今天),而不是小时/分钟前。

我已经尝试过将HOUR_IN_MILLIS,MINUTES_IN_MILLIS和SECONDS_IN_MILLIS常量用于第三个参数,并且尝试删除了最后一个缩写参数,但结果仍然相同。

我尝试了各种公共方法签名来尝试查找可能有效的签名,但它们都具有相同的结果。

有没有人遇到过这种情况,或者有人可以指出我要去哪里错了?非常感谢。

android android-date apache-commons-dateutils android-dateutils java-date

0
推荐指数
1
解决办法
1837
查看次数

从现在起3年后获得unix时间戳

使用Android和Java 8,如何及时获得unix时间戳?

例如

  • 从现在开始整整3年
  • 从现在起整整2个月
  • 从现在起整整一天
  • 等等

我知道我可以使用当前的时间戳System.currentTimeMillis() / 1000L(您也可以使用Instant.now().getEpochSecond()新的java.time,但这需要Android API> 25).现在我需要得到偏移并减去它.我可以使用TimeUnit.Days.toSeconds(),但是如果我想减去年份,它就没有YEAR单位而且我不想自己捣乱闰年.

有一个简单的方法吗?

android unix-timestamp android-date

0
推荐指数
1
解决办法
101
查看次数

更改android中的日期字符串格式

我从XML解析得到日期字符串,如下所示:2012-04-05 07:55:29 +05.30

现在,我希望这个字符串为:2012年4月5日

我怎样才能做到这一点?

java android date-format android-date

-1
推荐指数
1
解决办法
3925
查看次数