6

我正在转换一个 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
4

2 回答 2

1

您的问题无法按要求回答。了解该日期列中的数字至关重要,因为它们肯定是这样的。它们不是 30 年后您碰巧使用的编码中的字符串。

你提到了°&顺序。如果您使用的是采用 ISO 8859-1 编码的 Linux,则该度数符号为 B0。如果您使用的是带有 CP850 编码的 Windows 控制台,则为 F8。我们也不知道数据的字节顺序,这或许可以解释+(.

因此,首要任务是学习列中的实际字节。以十六进制打印它们,并将它们转换为解释为大端和小端的十进制。然后也许你会看到一个模式,让你建立一个时代。从那里它是所有新鲜的粉末和蓝天。

于 2015-05-28T19:05:19.777 回答
0

该页面说 ASCII 代码用于存储自 1900 年 1 月 1 日(或之前)以来的天数。这类似于 Lotus 1-2-3、MS Excel 和其他软件使用的序列日期技术。 http://cs.pervasive.com/forums/p/11233/38076.aspx

于 2017-02-22T00:19:28.153 回答