【发布时间】:2011-04-07 18:10:44
【问题描述】:
我需要读取使用 BinaryWriter 类编写的自定义序列化二进制数据。
为了存储日期,原设计师使用BinaryWriter.Write( Data.ToBinary() );
This 文章中提到了 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;
ps。这个概念会起作用吗?还是以总毫秒数的形式存储日期?
【问题讨论】:
-
您是否尝试在没有框架的情况下以另一种语言从 .net 读取序列化数据?
-
没错。语言包括java和objective-C。一旦我们知道了确切的架构,语言转换就变得微不足道了。
标签: .net datetime binarywriter