-4

智力锻炼。我有一个文件,它包含结构化数据,其中一些是简单的文本 - 就像这样(文件名/扩展名没有帮助):

DB1<80>^@¢^O^@^@^^^@^BX^A^@O¤<97>CALCULA~计算器ÿÿf^Q^@^B]^A^A^K0ZERO ÿÿÌ^O^@^ B]^A^B^B1ONE ÿÿÌ^O^@^B]^A^C^B2TWO ÿÿÌ^Q^@^B]^A^D^D3THREE ÿÿÌ^P^@^B]^A^E^C4FOUR ÿÿÌ^P^@^B]^A^F^C5FIVE ÿÿÌ^U^@^BM^A^H^FmathPROBLEMÿÌÿ^W^@^BX^A^P#¤<85>¤+PAGEcloseÿÿÿf^O^@^ B]^A^R^B6SIX ÿÿÌ^Q^@^B]^A^S^D7SEVEN ÿÿÌ^Q^@^B]^A^T^D8EIGHT ÿÿÌ^P^@^B]^A^U^C9NINE ÿÿÌ^P^@^B]^A^V^B10TEN ÿÿÌ^R^@^B^P^A^W^@¤t+ ¤uplus+^S^@^B]^A"^E11ELEVEN ÿÿÌ^S^@ ^B]^A#^E12TWELVE ÿÿÌ^U^@^B]^A$^G13 十三岁 ÿÿÌ^U^@^B]^A%^G14十四岁 ÿÿÌ^T^@^B]^A&^F15十五岁 ÿÿÌ^S^@ ^B^P^A'^@¤t- ¤uminus-^[^@^B^T^A(^H¤7¤x^[退格.¤v%% ^T^@^B]^A2^ F16SIXTEEN ÿÿÌ^U^@^B]^A3^G17SEVENTE~ ÿÿÌ^U^@^B]^A4^G18EIGHTEEN ÿÿÌ^U^@^B]^A5^G19NINETEEN ÿÿÌ^S^@^B]^A6^E20TWENTY ÿÿÌ^T^@^B^P^A7^@¤t= ¤uequals=^@^BX^A8V¤<8c>(数学 26-50)SMRIGHTMore 麻木的<99>Ìÿ^U^@^BX^A@^G¤:CLEARDI~ ÿÿf3^@^BX^AA/¤8¤x^ [,hold,ctrl.^[backspace.DELTCHARDeleteÿÿf^U^@^B]^AB^G21TWENTYO~ ÿÿÌ^U^@^B]^AC^G22TWENTTW~ ÿÿÌ^U^@^B]^AD^G23TWENTTH~ ÿÿÌ ^U^@^B]^AE^G24TWENTFO~ ÿÿÌ^U^@^B]^AF^G25TWENTFI~ ÿÿÌ^T^@^B^P^AG^H¤t¤utimes* ^Y^@^B^P^AH^H¤t/ ¤除以/ ^P^@^BU^B^@^PandandÌÿÿ^_^@^BX^B^A^T¤<8c> (地理)FLAG!USAÿø^?^P^@^BE^B^BAlbertaþüÔ(^@^BU^B^ChBritish Columbia不列颠哥伦布þüÔ^Y^@^BU^B^D0ManitobaManitobþüÔ!^@^BU^B^EHNew BrunswickNew BrunswþüÔ2 ^@^BU^B^Fp纽芬兰和拉布拉多Newf & LabradorþüÔ*^@^BU^B^GPNorthwest TerritoriesNW TerritorþüÔ^W^@^B^L^B^H^GprovinceMANITOBA^W^@^BX^B^P#¤< 85>¤+PAGEcloseÿÿf^U^@^B^L^B^Q^GCanadaCANADAF~^T^@^BE^B^R新斯科舍þüÔ^X^@^BU^B^S0NunavutNunavutþüÔ^X^@^BU^B^ T0OntarioOntarioþüÔ^]^@^BE^B^U爱德华王子岛þüÔ^V^@^BU^B^V(魁北克魁北克þüÔ$^@^BU^B^WhSaskatchewanSaskat-chewanþüÔ^N^@^BE^B^XYukonþüÔ^T^@ ^BQ^B ^H¤ta ¤uuha ÿÌÌ)^@^BQ^B0^@¤7¤x^[退格。¤t.¤<83>¤S¤<85>¤+¤<82>.ÿÿf&^ @^B^\^B17加拿大首都CANADAF~首都^]^@^BU^B2PEdmontonEdmon^M

我很想知道如何最好地“漂亮地打印”数据 - 所以我想以原来的结构查看数据。所以我在这里要知道的第一件事是:

一个程序编写了这个文件 - 是否可以判断该程序可能是用什么语言编写的?

4

2 回答 2

2

我会查看开始的 4 到 8 个字节,它们通常用作识别二进制数据文件的“幻数”。如果您可以识别文件格式,则可能能够识别创建它的软件。

顺便说一句,“DB1<80>”听起来应该是某种数据库。但是,如果它是一个合适的 DBMS 系统,那么您可能无法跟踪编写应用程序代码的语言,因为数据库通常绑定到各种语言。

于 2012-07-19T17:50:31.813 回答
0

您是否在程序中使用此数据文件?

什么平台?

看起来它可能是包含字符串的 db、xml 或 plist。

我会尝试将它传递给一个数据对象,看看你是否可以将该数据对象转换为 xml,然后将 xml 转储到日志中,看看它是否更具可读性。

更多细节会有所帮助。

于 2012-07-18T15:34:47.447 回答