最近楼主在开发中遇到了一个小问题

需要保存截图,同时把时间作为截图的名字存储

时间的保存格式为 2016-12-08 13:15:00

保存截图的流程就不说了,这篇博客只说一下以任意的格式保存时间。

楼主查了一下打印时间的函数

首先要引入一个程序集using System;

具体的函数为System.DateTime.Now

这时候Debug一句,就可以打印当前时间了

void Start(){

  Debug.Log(System.DateTime.Now);

}

这时默认的格式为

12/8/2016 1:39:30 PM

然而楼主想用的并不是这种格式

准确的说是策划想要的不是这种格式

然后查了一下API

Now里面含有Year、Month、Day、Hour、Minute、Second六个属性

于是楼主就想,能不能把这六个属性打印出来,然后用自己想要的格式连接成一个字符串打印呢

说试就试

void Start()
    {
        Debug.Log(System.DateTime.Now.Year
            + "-" + System.DateTime.Now.Month
            + "-" + System.DateTime.Now.Day
            + " " + System.DateTime.Now.Hour
            + ":" + System.DateTime.Now.Minute
            + ":" + System.DateTime.Now.Second);
    }

一条这么长的语句就被写了出来

自然地,楼主的第一反应是这么一个一个的获取,会不会很消耗性能

性能问题先妥协一下吧,反正不是经常用,能得到策划要求的格式是极好的

这时打印的格式为

2016-12-8 13:47:39

确实把“/”改成了“-”

PM下午标志也没有了

可是

可是

这还不是楼主想要的格式啊

于是只能再去搜搜搜

偶然间看到一行代码

System.DateTime.Now.ToString("hh:mm:ss");

然后写出来Debug了一下

13:52:03

诶,ToSting感觉靠谱,秒的显示终于是03而不是3了

年月日能不能也用这种格式写呢?

System.DateTime.Now.ToString("yy-mm-dd hh:mm:ss");

打印结果 16-54-08 13:54:32

哇,08终于打上去了

可是,54月是什么鬼。。

仔细一看,月份上显示的是分钟

这个yy-mm-dd里面的ymd是我自己蒙的。。

因为我看hh:mm:ss里面的hms不是hour、minute、second的缩写吗

又仔细查了一下

原来月份使用MM来表示的,mm表示的是分钟

还有,这个16也不靠谱啊,应该是2016

然后自己改了个yyyy

哈哈,还真就是这么回事

至此,还有最后一点儿问题

就是这个小时,原来的时候有一个PM表示下午

可是现在没有了PM,01点跟凌晨的1点有什么不一样呢

于是又自己尝试了下,

把hh改成了HH

哈哈哈哈,居然又成功了

至此,格式就变成了

2016-12-08 13:59:36

完全符合策划大大的要求

打完收工o.o

最后的代码是酱紫的:

void Start()
    {
        Debug.Log(System.DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"));
   }

所以呢

大家就可以按照我的探索路径

来随心所欲修改时间显示的任意格式喽~

2020/1/3增:

听说好多程序员在元旦,也就是2020.1.1都回去改Bug了

原因是输入了2019.12.31后,都自动变成了2020.12.31

原因呢,就是因为他们使用的是‘YYYY’,而不是‘yyyy’

为什么呢,看一下这个就知道了

所以,年份的格式上,要记得,是用yyyy哦

附:


声明:此博客为个人学习之用,如与其他作品雷同,纯属巧合,并请明示指出

最新文章

  1. js获取Html元素的实际宽度高度
  2. 关于帧中继和ppp的补充笔记
  3. 《Node.js开发指南》的少许坑儿~
  4. 屏幕录像专家V7.5(完美破解版,无水印)下载
  5. 返回本机的mac物理路径
  6. Android应用程序消息处理机制(Looper、Handler)分析
  7. Integer to Roman(JAVA)
  8. perl的Getopt::Long和pod::usage ?
  9. JavaScript Array 技巧
  10. 温故而知新----stack
  11. windows下Redis的安装配置以及注意事项
  12. PHP博大精深,入门容易,精通难,怎么才能真正学好PHP
  13. NPOI 导出Excel部分
  14. python之文件处理
  15. UI5-文档-2.5-开发混合Web容器
  16. error:2014 Commands out of sync; you can't run this command now
  17. MUI事件管理
  18. jsoop_封装
  19. poj2559单调栈
  20. Spark2.0机器学习系列之8:多类分类问题(方法归总和分类结果评估)

热门文章

  1. 黑马程序员_ Objective-c 之Foundation之NSNumber ,NSValue, NSDate
  2. (转)C# 打印PDF文件使用第三方DLL
  3. OpenGL学习笔记1——第一个程序
  4. C++设计模式-Strategy策略模式
  5. IntelliJ IDEA 使用说明(For Eclipse user)
  6. Qt 环境下MAPX组件的编程
  7. 【SSM 7】Mybatis底层封装思路
  8. 如何在tpl模版的div块中加ztree
  9. WKWebView _WebFilterIsActive returning: NO
  10. 会话状态已创建一个会话 ID,但由于响应已被应用程序刷新而无法保存它