我正在将一个好的旧 Clipper xbase 程序转换/迁移到 Java。由于旧程序仍在运行,因此在将 Java 中的数据写入数据库时,我需要兼容。它工作得非常好,直到现在。
为此,我需要 Clipper 中的 i2bin 和 bin2i 函数在 Java 中运行。
有关 i2Bin,请参见此处:http: //www.marinas-gui.org/projects/harbour_manual/i2bin.htm
我可以通过以下方式读取剪裁器写入的 i2bin 数据:cData 是一个字符串,其中包含在第一个 char 之后编码为 char 的 int:
char [] array = cData .substring(1).toCharArray();
int nLen = (int) array [0];
但我无法在 Java 中编写正确的 int 编码为 char。所以我得到了一个
int len = 8;
char clen = (char) len;
我得到一个 '\b' 但只有一个字符。裁剪器函数 bin2i 无法正确解释它。如果我在字符上添加一个空格
String data = clen + " "
我得到了 bin2i 的正确长度,但它不再是长度 8。也许它是通过 Ascii 32 编码的?
无论如何,我怎样才能做到正确?
问候,彼得