gpt4 book ai didi

java - Java 中需要 Clipper bin2i 和 i2bin

转载 作者:太空宇宙 更新时间:2023-11-04 13:26:58 24 4
gpt4 key购买 nike

我正在将一个好的旧 Clipper xbase 程序转换/迁移到 Java。由于旧程序仍在运行,因此在用Java将数据写入数据库时​​需要兼容。到目前为止,它运行得非常好。

为此,我需要 Clipper 中的函数 i2bin 和 bin2i 在 Java 中运行。

请参阅此处的 i2Bin:http://www.marinas-gui.org/projects/harbour_manual/i2bin.htm

我可以使用以下命令读取 Clipper 写入的 i2bin 数据:cData 是一个字符串,其中包含从第一个字符开始编码为 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 编码的?

无论如何,我怎样才能做到正确呢?

问候,彼得

最佳答案

你想要这个:

public byte[] i2bin(short i)
{
byte[] ret = new byte[2];
ret[0] = (byte)(i & 0xff);
ret[1] = (byte)((i>>>8) & 0xff);
return ret;
}

不要使用字符或字符串,因为它们依赖于语言环境/字符集

关于java - Java 中需要 Clipper bin2i 和 i2bin,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32554569/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com