释放双眼,带上耳机,听听看~!

计算机语言多种多样,它的日期和时间格式通常会令程序员头疼,但是幸运的是,android提供了dateformate,它可以根据指定语言区域的默认格式进行格式化,下面是技术狗小编介绍的Android之日期时间格式的实现方法,一起来看看吧!

直接贴代码:

复制代码 代码如下:

public static CharSequence formatTimeInListForOverSeaUser(

final Context context, final long time, final boolean simple,

Locale locale) {

final GregorianCalendar now = new GregorianCalendar();

// special time

if (time < MILLSECONDS_OF_HOUR) {

return "";

}

// today

final GregorianCalendar today = new GregorianCalendar(

now.get(GregorianCalendar.YEAR),

now.get(GregorianCalendar.MONTH),

now.get(GregorianCalendar.DAY_OF_MONTH));

final long in24h = time - today.getTimeInMillis();

if (in24h > 0 && in24h <= MILLSECONDS_OF_DAY) {

java.text.DateFormat df = java.text.DateFormat.getTimeInstance(

java.text.DateFormat.SHORT, locale);

return "" + df.format(time);

}

// yesterday

final long in48h = time - today.getTimeInMillis() + MILLSECONDS_OF_DAY;

if (in48h > 0 && in48h <= MILLSECONDS_OF_DAY) {

return simple ? context.getString(R.string.fmt_pre_yesterday)

: context.getString(R.string.fmt_pre_yesterday)

+ " "

+ java.text.DateFormat.getTimeInstance(

java.text.DateFormat.SHORT, locale).format(

time);

}

final GregorianCalendar target = new GregorianCalendar();

target.setTimeInMillis(time);

// same week

if (now.get(GregorianCalendar.YEAR) == target

.get(GregorianCalendar.YEAR)

&& now.get(GregorianCalendar.WEEK_OF_YEAR) == target

.get(GregorianCalendar.WEEK_OF_YEAR)) {

java.text.SimpleDateFormat sdf = new java.text.SimpleDateFormat("E", locale);

final String dow = "" + sdf.format(time);

return simple ? dow : dow

+ java.text.DateFormat.getTimeInstance(

java.text.DateFormat.SHORT, locale).format(time);

}

// same year

if (now.get(GregorianCalendar.YEAR) == target

.get(GregorianCalendar.YEAR)) {

return simple ? java.text.DateFormat.getDateInstance(

java.text.DateFormat.SHORT, locale).format(time)

: java.text.DateFormat.getDateTimeInstance(

java.text.DateFormat.SHORT,

java.text.DateFormat.SHORT, locale).format(time);

}

return simple ? java.text.DateFormat.getDateInstance(

java.text.DateFormat.SHORT, locale).format(time)

: java.text.DateFormat.getDateTimeInstance(

java.text.DateFormat.SHORT, java.text.DateFormat.SHORT,

locale).format(time);

}

注意这里用的是java.text.DateFormat,还有另外一个java.text.format.DateFormat,后者不能指定locale。

以上代码都是技术狗小编为大家搜集的Android之日期时间格式的实现方法,希望对大家的学习有一定的帮助!

时间格式转变 android,Android开发日期时间格式的转化相关推荐

  1. mysql的时间在cmd的输入格式_获取“System.FormatException:输入字符串的格式不正确。”在日期时间对象插入到MySql数据库...

    我正在使用C#与Mvvm Light和Mysql数据库的应用程序.当我做一个插入到数据库与对象是一个DateTime对象,我收到以下错误的参数:获取"System.FormatExcepti ...

  2. python日期格式统一化: 各种日期时间格式处理为标准统一日期时间格式

    python日期格式统一化: 各种日期时间格式处理为标准统一日期时间格式 import traceback import pandas as pd aa = ['2021年12月11日 19:19', ...

  3. Android中实现日期时间选择器(DatePicker和TimePicker)

    利用Android应用框架提供的DatePicker(日期选择器)和TimePicker(时间选择器),实现日期时间选择器. Dialog的Content布局文件(date_time_dialog.x ...

  4. java时间转换为字符串格式错误_字符串转换为日期时间格式及其错误处理(转)

    1. 字符串转换成日期时间格式 //日期时间格式:yyyy-MM-dd hh:mm:ss String time ="1900-02-21 12:23:33"; //将字符串转换为 ...

  5. java格式化时间字符串 毫秒_SimpleDateFormat是否有格式字符串来获取毫秒日期时间值,而不是人类可读的格式?...

    旧的和过时的 SimpleDateFormat 类不能这样做.它的替代品,现代的 DateTimeFormatter ,可以. DateTimeFormatter epochMilliFormatte ...

  6. linux常用时间命令全集,Linux 指令篇:日期时间排程--date

    Linux 指令篇:日期时间排程--date 名称 : date 使用权限 : 所有使用者 使用方式 : date [-u] [-d datestr] [-s datestr] [--utc] [-- ...

  7. datetimepicker 默认时间_Django项目中如何使用日期时间选择器DateTimePicker

    如果你的模型中含有datetime类型的字段,表单中需要用户输入日期和时间,那么你如何保证不同用户输入的时间都遵循一定的格式(DD/MM/YYYY 或者YYYY-MM-DD)是个必须要考虑的问题.一个 ...

  8. element时间选择器限制到时分秒_element-ui 日期时间选择器限制日期以及时间范围...

    element-ui 日期时间选择器限制日期以及时间范围. 实现效果: 实现方式: 业务背景: 日期:只能选择今天以后的日期(包含今天), 时间:只能选择当前日期时间一小时以后的时间. 实现效果: 实 ...

  9. date( 1day ) php,PHP_使用PHP的日期与时间函数技巧,PHP的日期时间函数date() 1,年- - phpStudy...

    使用PHP的日期与时间函数技巧 PHP的日期时间函数date() 1,年-月-日 复制代码 代码如下: echo date('Y-m-j'); 2007-02-6 echo date('y-n-j') ...

  10. vue - 比较两个日期大小、比较同一天两个时间大小(判断两个日期时间的大小)JS 解决方法

    介绍 vue项目中,可能需要对比两个日期时间的大小,如下代码所示: 2018-8-12 12:30 | 2018-8-12 02:30 它们谁大? 比较两个日期大小 方法一: //比较两个日期大小.格 ...

最新文章

  1. 设计模式——建造者模式
  2. 攻防世界-Misc-_Aesop_secret
  3. 阅读应用的社交还能做什么?
  4. [JSOI2008]最小生成树计数
  5. ubuntu dpkg mysql_ubuntu-12.04 – 在Ubuntu 12.04上无法启动MySQL5.5 – “dpkg:依赖问题”...
  6. C++友元:友元函数、友元类和友元成员函数
  7. 基于 webdriver 的测试代码日常调试方python 篇
  8. android httpurlconnection 超时 重发_Android / Java | 向服务器传文件
  9. java bfs dfs_java优先搜索(DFS/BFS)实际应用
  10. 手机数控模拟器安卓版_CNC模拟器安卓中文版
  11. 【Git】Git提交代码详细步骤
  12. 怎么把python压缩_python中如何实现图片压缩
  13. 新版edge找不到internet选项
  14. MySQL 反引号作用
  15. ultravnc download windows 7,ultravnc download windows 7软件的4大优势
  16. 黄金搭档:老虎+猫头鹰+孔雀+考拉
  17. 香港科大三项研究登榜2020年度香港十大创科新闻
  18. html5是什么意思,html5是什么意思?
  19. ListIterator
  20. 关于H5的20道面试题及答案

热门文章

  1. 一位阿里云小哥要感谢“双11”,于是说了一段脱口秀……
  2. 阿里张勇《人民日报》刊发署名文章:抓住数字新基建的机遇
  3. 阿里云郑晓:浅谈GPU虚拟化技术(第二章)
  4. 李扬:2018春节港澳游(上篇:行)
  5. 【语音处理】基于matlab GUI汉宁窗FIR陷波滤波器语音信号加噪去噪【含Matlab源码 1711期】
  6. 【元胞自动机】基于matlab激进策略元胞自动机三车道(开放辅路,软件园影响)交通流模型【含Matlab源码 1298期】
  7. 【VRP】基于matlab禁忌搜索算法求解初始点和终点确定的取送货路径问题【含Matlab源码 1224期】
  8. 【数字信号】基于matlab GUI DTMF信号生成与检测(带按键音)【含Matlab源码 1086期】
  9. 【图像处理】基于matlab GUI美颜系统【含Matlab源码 809期】
  10. 【目标跟踪】基于matlab红外图像弱小目标检测与跟踪【含Matlab源码 374期】