之前写了报表统计的sql和前端页面,然而数据拿出来之后,我们需要处理下时间格式,也需要在日期不连续的时候插入空数据,于是就要用到时间转换及列表数据插入

c#.jpg
在做Android开发时,已经习惯了封装好的api,日期时间戳直接可以进行转换,然而,在c#开发中,这个转换还是要自己进行下处理的~
DateTime转Unix时间戳
/// <summary>
/// 将c# DateTime时间格式转换为Unix时间戳格式
/// </summary>
/// <param name="time">时间</param>
/// <returns>long</returns>
private long ConvertDateTimeToLong(System.DateTime time)
{
System.DateTime startTime = TimeZone.CurrentTimeZone.ToLocalTime(new System.DateTime(1970, 1, 1, 0, 0, 0, 0));
long t = (time.Ticks - startTime.Ticks) / 10000; //除10000调整为13位
return t;
}
Unix时间戳转DateTime
/// <summary>
/// 时间戳转为C#格式时间
/// </summary>
/// <param name=”timeStamp”></param>
/// <returns></returns>
private DateTime ConvertLongToDateTime(long timeStamp)
{
DateTime dtStart = TimeZone.CurrentTimeZone.ToLocalTime(new DateTime(1970, 1, 1));
long lTime = timeStamp * 10000;
TimeSpan toNow = new TimeSpan(lTime);
return dtStart.Add(toNow);
}
然后再来看看list的数据插入,list带有Add和Insert方法,Add默认在最后添加数据,而Insert则可以在指定的index插入数据,示例:
list.Add(obj);
list.Insert(0, obj);
注意Insert时,index不要越界。
原文:简书ThinkinLiu 博客: IT老五
C#新手上路,勿喷!欢迎大家共同学习与指教~

IT老五(it-lao5):关注公众号,一起源创,一起学习!