【问题标题】:Exchange Object/Class data between Java and C++在 Java 和 C++ 之间交换对象/类数据
【发布时间】:2013-09-05 15:28:24
【问题描述】:

我需要在 c++ 程序和显示该数据的 Java GUI 之间传递数据。我可以将这些数据放在一个类中,但 c++ 程序可以在 linux(树莓派)上运行,而 java 可能在也可能不在 Windows 上。我有什么选择? 如果它们在不同的机器上,请帮助我处理相同的机器进程。 附言 在不同的机器上可以连接互联网。

【问题讨论】:

标签: java c++ linux data-transfer data-transfer-objects


【解决方案1】:

您可能想要实现一些serialization

我建议使用简单的文本序列化格式,例如 JSON(但您也可以考虑使用 YAML 甚至 XML)。有许多可用的 JSON 库,例如 jansson(C 语言)、JsonCpp(C++ 语言)和一些用于 Java 的库。

当然,您需要某种形式的Inter-Process Communication。这可以是套接字或管道。阅读例如Advanced Linux Programming 或其他一些教程。也许有一些Event Loop(例如libevlibevent)甚至使用JSON-RPC(或者可能是一些HTTP服务器库)

您可以使用像XDRlibs11n 这样的二进制序列化,但通常不值得这么麻烦。

【讨论】:

  • +1 序列化有多种形式。任何跨平台工作的都可以,但文本序列化格式通常更容易理解/阅读/修复。
猜你喜欢
  • 2011-01-15
  • 1970-01-01
  • 2013-04-04
  • 2019-06-23
  • 1970-01-01
  • 2016-05-17
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多