思路

1. 获取时间

可以采用的方式有直接获取系统时间System.currentTimeMillis()或者使用Calendar类获取时间

2. 处理时间

在使用Calendar时,可以直接由Calendar的set方法对于时间进行设置

由于Calendar的时间格式并不是我们希望得到的Linux时间戳格式,所以我们需要使用时间格式模板,通过生成与解析方法进行转换,得到最终的Linux时间戳的时间格式

注意

Calendar 的时间设置与北京时间相差八小时,当直接设置当前的小时数据时,需考虑到这一点

例:如果需要北京时间23:00:00,则需设置HOUR_OF_DAY = 15

问题

在Kotlin在线编辑器中运行时,上面注意中的处理是没有问题的,会得到正确结果;而在Android中实际使用时,却应该使用标准的设置,即设置HOUR_OF_DAY = 23

造成这样结果的原因还不清楚,欢迎留言

实现

自己写了几种可能会常用的获取时间戳的函数,供大家直接使用,代码使用Kotlin实现

得到当前的时间戳

fun getCurrentTimeStamp(): String {

var time = System.currentTimeMillis()

var nowTimeStamp = (time / 1000).toString()

return nowTimeStamp

}

得到前一小时的时间戳

fun getTimeStampAtOneHourAgo(): String {

var calendar = Calendar.getInstance()

calendar.setTimeInMillis(System.currentTimeMillis())

calendar.set(Calendar.HOUR_OF_DAY, calendar.get(Calendar.HOUR_OF_DAY) - 1)

var template = SimpleDateFormat("dd/MM/yyyy HH:mm:ss") // SimpleDateFormat

var timeStr = template.format(calendar.time) // String

return (template.parse(timeStr).time / 1000).toString()

}

得到当天23:59: 59 的时间戳

fun getTimeStampAtTheEndOfDay(): String {

var calendar = Calendar.getInstance()

calendar.setTimeInMillis(System.currentTimeMillis())

calendar.set(Calendar.HOUR_OF_DAY, 23)

calendar .set(Calendar.MINUTE, 59)

calendar.set(Calendar.SECOND, 59)

calendar.set(Calendar.MILLISECOND, 59)

var template = SimpleDateFormat("dd/MM/yyyy HH:mm:ss") // SimpleDateFormat

var timeStr = template.format(calendar.time) // String

return (template.parse(timeStr).time / 1000).toString()

}

传入时间字符串及模板,返回时间的模板字符串

fun string2Date(str: String, format: String): Date {

try {

return SimpleDateFormat(format).parse(str)

} catch (e: ParseException) {

e.printStackTrace()

}

return Date()

}

一个好用的在线Linux时间戳转换器

更新时间

7/10/2018

linux13位时间戳,Kotlin 处理Linux时间戳相关推荐

  1. linux下时间戳计算时间差,linux 时间戳及时间差计算

    使用时间戳转换为具体格式的日期输出,输出格式为:date -d '1970-01-01 UTC Timestamp seconds' +"%Y-%m-%d %T %z" [root ...

  2. linux 时间戳比较,linux 时间戳

    linux 时间戳用date命令在修改 在linux环境中,不管是编程还是其他维护,时间是必不可少的,也经常会用到时间的运算,熟练运用date命令来表示自己想要表示的时间,肯定可以给自己的工作带来诸多 ...

  3. python生成时间戳_python生成13位或16位时间戳以及反向解析时间戳的实例

    我就废话不多说了,直接上代码吧! import datetime import time def get_float_time_stamp(): datetime_now = datetime.dat ...

  4. linux ctime 时间戳,Linux时间戳atime ctime mtime区别及相关命令

    首先简单讲一下Linux时间戳atime ctime mtime的概念 atime:Access Time 最后一次访问文件(读取或执行)或目录的时间 mtime:Modofy Time 最后一次修改 ...

  5. python日期格式转换成13位时间戳_python生成13位或16位时间戳以及反向解析时间戳的实例...

    我就废话不多说了,直接上代码吧! import datetime import time def get_float_time_stamp(): datetime_now = datetime.dat ...

  6. 易语言linux时间戳转换,生成时间戳(如何正确地生成时间戳)

    如何正确地生成时间戳 各种语言版本的时间戳 1.Swift NSDate().timeIntervalSince1970 2.Go int32(time.Now().Unix()) 3.Java (i ...

  7. JavaScript中linux时间戳与日期的转换

    1.由linux时间戳转换为格式化日期: 1>例:由一个linux时间戳1490778706000转换为:2017/3/29 下午5:11:46 var CrDate = new Date(); ...

  8. linux 时间戳转换/dmesg 时间转换

    摘要:linux时光戳转换 1. 将日期转换成时光戳 $date %s -d 04/24/2014 15:30:00 1398324600 2. 将时光戳转换成日期 $date -d @1398324 ...

  9. hive linux时间戳转换,Hive 中 时间戳,字符串转换

    13位时间戳装换为日期格式的字符串 select from_unixtime( cast(1597651229344/1000 as int),'yyyy-MM-dd HH:mm:ss') 时间字符串 ...

最新文章

  1. 送你一份使用k近邻算法实现回归的实用指南(附代码、链接)
  2. ios8 UITableView section不显示
  3. 【MATLAB】 csvwrite数据缺失怎么办
  4. Exploring Pyramids【动态规划——区间DP】
  5. 阿里最快数周内提交赴港上市申请?回应:不予置评
  6. DataSnap服务器从xe2升级到xe5报错的处理
  7. 爱可生 mysql监控_MySQL 数据传输DTLE 最新版来啦-爱可生
  8. iview table增加一行减少一行_iView学习笔记(二):Table行编辑操作
  9. 9. grouped product
  10. 提示不支持IE6的脚本
  11. 安卓软件改名器_安卓歌词适配V3.9.5 无损音乐下载器(软件篇)
  12. vue给标签动态添加元素_动态添加dom元素,并绑定vue事件
  13. 路由器、猫、交换机的解释
  14. 读后感__局外人_知其不可而为之
  15. 数据中心运营规划的基本原则
  16. 名人养生贴网络疯转 跟李嘉诚们学做长寿优等生
  17. redis桌面管理工具 redis-desktop-manager使用指南
  18. 要学计算机买macbook,我是学平面设计的,买苹果电脑需要什么样的配置以上?...
  19. python中prettytable模块_PrettyTable模块
  20. 图片链接打不开检测工具-免费链接失败检测软件

热门文章

  1. vue 前期准备,项目结构
  2. js 可以做什么东西_Deno需要做什么才能取代Node.js?
  3. install python 3.5.0_Mac 下安装Python3.5出现“python3-3.5.0 already installed, it's just not linked”错误...
  4. Spring Boot 配置SSL 实现HTTPS
  5. Navicat 12 连接oracle闪退问题
  6. Slave is not configured or failed to initialize properly. You must at least set --server-id
  7. springboot pom 依赖
  8. JavaScript-Map和Set
  9. 配置nginx作为静态资源服务器 css,js,image等资源直接访问
  10. mysql heartbeat 慢_Mysql 慢日志优化分析方法