如何实现时间戳转换

来源:百度知道 编辑:UC知道 时间:2024/09/21 17:49:20
不用语言环境已经实现的现成方法,
如何自己实现时间戳转换标准时间格式如(2009-09-19)
请问有人试过吗?
比如年份可以这样获得 time/(86400*365)+1970
但是具体的 月份,日,时,分,秒呢。
请各位赐教

本来下午能解答的..但是当时用JS写方法...发现有几个小时的差..一直不知道怎么解决...刚刚用C#重写了..终于知道了为什么了

要说的是..你的思路是错误的..因为你忽略了闰年~~

下面是C#的代码 : (.Net的DateTime对象返回的是100纳秒的时间单位,年份是从AD1开始计算的,纳秒我也不会换算成毫秒,系数是网上找到的~)

class Program
{
// 定义必须变量
const int _1M = 60; // 分钟
const int _1H = _1M * 60; // 小时
const int _1D = _1H * 24; // 天
const long _1Y = _1D * 365; // 年(非闰年)
const long _YS = _1Y * 3 + _1D * 366; // 一个闰年年度
const long _30D = _1D * 30; // 30天(月)
const long _31D = _1D * 31; // 31天(月)
const long _28D = _1D * 28; // 28天(月)
const long _29D = _1D * 29; // 29天(月)
long[] NormalYear = { _31D, _28D, _31D, _30D, _31D, _30D, _31D, _31D, _30D, _31D, _30D, _31D }; // 年
long[] LeapYear = { _31D, _29D, _31D, _30D, _