我正在转换80年代制作的数据库,似乎某些表的日期存储为字符。有2列数据。 第一列的数据格式如下:
°& C2 024
第二列是纯文字说明:
Description of some stuff
数据会导入“表格”视图。 C2定义表头,024定义行和°&定义表数据的提取日期。例如:
Date: 2/21/2007
C1 C2 C3 C4
000
003
006
009
012
015
018
021
024 Description of some stu...
027
我尝试将日期转换为十六进制,并将十六进制与字符映射进行比较而没有运气。
我尝试按照以下说明使用unix日期:http://smallbusiness.chron.com/convert-date-hexadecimal-56217.html但没有成功。
示例值和已知日期:
°& - 2/21/2007
¬& - 2/7/2007
+( - 2/6/2007
ª& - 2/5/2007
答案 0 :(得分:1)
您的问题无法按要求回答。了解该日期栏中的数字至关重要,因为这肯定是它们的本质。它们不是30年后碰巧使用的编码中的字符串。
你提到了°&
序列。如果您使用的是带有ISO 8859-1编码的Linux,则该度数符号为B0。如果您使用的是带有CP850编码的Windows控制台,则为F8。我们也不知道数据的字节序,这可能解释了+(
的神秘面纱。
因此,第一项业务是学习列中的实际字节。以十六进制打印它们,并将它们转换为十进制解释为big-little-little-endian。那么也许你会看到一个让你建立时代的模式。从那里它是所有新鲜的粉末和蓝天。
答案 1 :(得分:0)
此页面显示ASCII代码用于存储自1900年1月1日(或之前)以来的天数。这类似于Lotus 1-2-3,MS Excel和其他软件使用的序列日期技术。 http://cs.pervasive.com/forums/p/11233/38076.aspx