Java中的Palm数据库(PDB)文件?

有没有人写过任何用Java读写Palm数据库(PDB)文件的类? (我的意思是在服务器上,而不是在Palm设备本身。)我试图谷歌,但我得到的是蛋白质数据库参考。

我编写了一个Perl程序,使用Palm :: PDB.pm来完成它,但我想把它变成一个GWT应用程序的servlet。

http://www.jsyncmanager.org/上的jSyncManager项目位于LGPL下,包括读取和写入PDB文件的类 – 在源代码中查看jSyncManager / API / Protocol / Util / DLPDatabase.java。 看起来您需要的核心代码可以通过一点点努力与库的其余部分隔离开来。

有几种方法可以解决这个问题;

  1. 最简单但最慢的:找一个perl-> java桥。 这不会很快,但它会起作用,它应该涉及最少量的工作。
  2. 找到您拥有源代码并转换它的C ++ / C#实现(这应该是最快的解决方案)
  3. 找一个Java阅读器…似乎有一些列在谷歌下…但我没有任何经验与这些。

根据您的预期用途,您可能会考虑自己编写一个简单的阅读器。 格式非常简单,您只需要处理几个简单的字段来解析它。

基本上整个文件都有一个标题,最后有一个2字节的整数,用于指定记录的数量。 因此,只需跳过标题中所有其他字段的字节,然后读取最后一个字段,即文件中的记录数。 请注意,PDB格式首先写入具有最高有效字节的整数。

在此之后,每个记录将有一个记录标题,其第一个字段是记录本身的文件的实际偏移量。 再次,请注意字节顺序。

因此,现在您可以为文件中的每个记录提供文件的偏移量,只要您知道要尝试读取的PDB文件类型的格式,就可以非常轻松地读取实际记录。

维基百科对标题格式有一个很好的概述。

也许JPilot可以提供帮助吗? 他们必须有很多处理Palm OS数据的Java代码。