//定义当前时间
DateTime localtime = DateTime.Now;
//文本框显示当前时间
textBox1.Text = localtime.ToString("yyyy-MM-dd HH:mm:ss");
//将时间转换为整数
double timestamp = LocalTimeToUnixTimestamp(localtime);
textBox4.Text = Convert.ToString(timestamp);
//将时间整数转换为4字节数组,小端模式
byte[] timebytes = BitConverter.GetBytes(Convert.ToUInt32(timestamp));
textBox2.Text = BitConverter.ToString(timebytes);
//调用方法输出字节数组;
//调用方法收到字节数组;
//将4字节数组转换为整数,小端模式;
double converttimestamp = BitConverter.ToUInt32(timebytes,0);
//将整数转换为时间;
DateTime converttime = UnixTimestampToLocalTime(converttimestamp);
textBox3.Text = converttime.ToString("yyyy-MM-dd HH:mm:ss");
调用的两个方法:
public static double LocalTimeToUnixTimestamp(DateTime localTime)
{
return Convert.ToInt64((localTime.ToUniversalTime() - _unixTime).TotalSeconds);
}
public static DateTime UnixTimestampToLocalTime(double unix)
{
return _unixTime.AddSeconds(unix).ToLocalTime();
}
定义个初始时间:
private readonly static DateTime _unixTime = TimeZoneInfo.ConvertTimeToUtc(new DateTime(1970, 1, 1), TimeZoneInfo.Utc);
非常简单的办法 实现了 将时间转换为字节数组,输出到Plc ,读取了别人传过来字节数组,再将字节数组转换为时间,
时间 数值 字节 之间的互相转换 Time value byte conversion
原文:https://www.cnblogs.com/boxkevin/p/11945509.html