将信息从java传递到c ++的最佳方法是什么?

2022-09-02 12:54:09

我有一个java应用程序,我需要将一些信息传递给C++程序。有人建议我使用一些简单的套接字编程来做到这一点。这是最好的方法吗?如果不是,还有什么替代方案?如果是这样,我应该如何学习套接字编程?


答案 1

您有几种选择:

  • 将文件从 Java 传递到C++。这可能是最简单的。它很容易测试,并且不需要任何第三方库。
  • 如前所述使用套接字。在C++,如果您需要跨平台解决方案,ACEboost等库将为您节省一些心痛。
  • 使用 JNI 从 Java 调用C++反之亦然。这可能是最困难但性能最高的。

对于学习套接字,谷歌搜索“java套接字教程”“c++套接字教程”会给你很多信息。


答案 2

执行此操作的一种简单方法是使用标准输入和输出:

class MyTest {
    public static void main(String... args) {
        System.out.println("carpet");
    }
} // Java

#include <iostream>
#include <string>
int main() {
    string input;
    std::getline(std::cin, input);
    std::cout << "from java: " << input << std::endl; // output: carpet
} // C++

# start by piping java's output to c++'s input
$ java MyTest | ./my_receive 

推荐