有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

跨编程语言和机器序列化数字的java库

我有一个Java程序,需要写一个8、16、32和64位的整数和16、32和64位的浮点数的文件。 该文件需要由C语言的程序读取(反之亦然)。 这些程序用于不同类型的机器,因此文件需要独立于小端或大端

我正在寻找一个用Java和C编写的库来实现这一点。该库需要紧凑,因为它也将用于微控制器中

注意:目前,我自己正在实现这些函数,并且它工作得很好(因此,不需要给我特别的解决方案)。 注:我知道我可以用人类可读的格式书写数字,并使用scanf读取它们;我现在不想使用这个解决方案,因为它更慢,发生的次数也更多


共 (3) 个答案

  1. # 2 楼答案

    在Java方面,您可以只使用^{},它保证使用大端格式,也就是网络字节顺序。在C端,可以使用^{} and ^{}函数将网络字节顺序转换为主机字节顺序

  2. # 3 楼答案

    一种可能是使用Sun的XDR格式。奇怪的是,我不相信Java提供了对它的支持,但如果你环顾四周,很容易找到它。Sun确实包括一个带有Solaris的XDR库;如果不使用Solaris,也很容易找到C的实现