我需要读取使用 BinaryWriter 类编写的自定义序列化二进制数据。为了存储日期,最初的设计者使用BinaryWriter.Write( Data.ToBinary() );
这篇文章有点提到 ToBinary 函数是如何工作的;但我需要的是构建将模拟其他编程语言中的方法 ToBinary() 和 FromBinary() 的代码。
任何人都可以查看以下伪代码并让我了解实际偏移位计数。
long i = DateTime.Now.ToBinary();
// will likely need to add code here to "condition" the value
int yr = (i >> 48) & 0x7fff;
int mo = (i >> 44) & 0xf;
int day = (i >> 36) & 0xff;
int hr = (i >> 28) & 0xff;
int min = (i >> 20) & 0xff;
int sec = (i >> 12) & 0xff;
int ms = i & 0xfff;
附言。这个概念甚至会起作用..还是以总毫秒的形式存储日期?