如果您没有找到JNI’easy’,那么您需要IPC(进程间通信)机制.因此,从您的C流程中,您可以与Java流程进行通信.

你在控制台重定向方面所做的是IPC的一种形式,实质上就是IPC.

由于你发送的内容的性质不是很清楚,很难给你一个很好的答案.但是如果您有“简单”的对象或“命令”可以轻松地序列化为简单的协议,那么您可以使用协议缓冲区等通信协议.

#include

#include

// Create an IPC enabled file

const int FileSize = 1000;

std::filebuf fbuf;

fbuf.open("cpp.out", std::ios_base::in | std::ios_base::out

| std::ios_base::trunc | std::ios_base::binary);

// Set the size

fbuf.pubseekoff(FileSize-1, std::ios_base::beg);

fbuf.sputc(0);

// use boost IPC to use the file as a memory mapped region

namespace ipc = boost::interprocess;

ipc::file_mapping out("cpp.out", ipc::read_write);

// Map the whole file with read-write permissions in this process

ipc::mapped_region region(out, ipc::read_write);

// Get the address of the mapped region

void * addr = region.get_address();

std::size_t size = region.get_size();

// Write to the memory 0x01

std::memset(addr, 0x01, size);

out.flush();

现在你的java文件可以打开’cpp.out’并像普通文件一样读取内容.

c java交互_C和Java程序之间的交互/通信相关推荐

  1. C# 创建、部署和调用WebService的简单示例 webservice 可以用于分布式应用程序之间的交互,和不同程序之间的交互。 概念性的东西就不说太多,下面开始创建一个简单的webservi

    C# 创建.部署和调用WebService的简单示例 webservice 可以用于分布式应用程序之间的交互,和不同程序之间的交互. 概念性的东西就不说太多,下面开始创建一个简单的webservice ...

  2. java多线程系列八之多线程之间的交互:线程阀

    注意!注意!如果代码出现乱序,请双击代码部分,则会出现排序正常的代码 1.阻塞队列BlockingQueue 先理解Queue,Deque,BlockingQueue的概念. Queue(队列):用于 ...

  3. java 析构函数_C++与Java的区别(一)

    一,前言 网上经常看到编程语言之争,大伙儿皈依到不同门派,各自怀抱信仰,时不时还发生点儿"冲突". 这其中,C++和Java的优劣,十多年前就常吵的火热.然而时代在进步,技术在发展 ...

  4. Silverlight 应用程序之间在客户端通信

    运行在同一台电脑上的多个 Silverlight 应用程序可以通过本地消息进行通信,通信是在客户端进行的,不需要与服务端交互.使用这一功能可以使在同一页面承载的多个 Silverlight 应用程序之 ...

  5. Java后台与微信小程序的数据交互

    想把自己写的一个小项目转成微信小程序,主要是因为小程序比较火,而且自己想学一下小程序的东西,所以抱着初学者的心态开始了这个痛苦的旅程.看过小程序的一点视频,个人感觉和HTML,css,js差不多,甚至 ...

  6. 与java比较_C++与Java比较

    "作为一名C++程序员,我们早已掌握了面向对象程序设计的基本概念,而且Java的语法无疑是非常熟悉的.事实上,Java本来就是从C++衍生出来的." 然而,C++和Java之间仍存 ...

  7. c 异常 java异常_C ++和Java中异常处理的比较

    如今,几乎所有面向对象的语言都具有异常处理功能.在C ++和Java中,我们也可以获得这种功能.C ++中的异常处理和Java中的异常处理之间有一些相似之处,例如在两种语言中,我们都必须使用try-c ...

  8. C 多态和java多态_C与java的多态机制与区别

    既然多态是面向对象的三大本质特征之一(其它两个是数据抽象和继承),那么 C++为什么不将方法调用的默认方式设置为动态绑定,而要通过关键字virtual进行标记呢?Bruce Eckel在<Thi ...

  9. c 调用java包_C#调用java代码(IKVMC)

    参考资料:https://blog.csdn.net/threadroc/article/details/51406587 参考1:http://www.cnblogs.com/Jack-Blog/p ...

最新文章

  1. html中如何实现选择存储路径的功能_HTML是Web前端的基础知识,刚入门的你真的学对了吗?...
  2. boost::mp11::mp_flatten相关用法的测试程序
  3. 存储过程之like写法一
  4. Spark最新的两大研发方向深度学习和结构化流处理
  5. 什么是 CMS - Content Management System
  6. DB2 存储过程中执行动态SQL的两种写法
  7. [改善Java代码]不推荐使用binarySearch对列表进行检索
  8. 反射使用 非空表向空表赋值
  9. delphi相关文件扩展名
  10. Android按钮点击控制进度条,Android通过按钮和进度条实现音量调节(AudioManager)...
  11. Codeforces GoodBye2015 New Year and Three Musketeers Codeforces 611E(贪心)
  12. win10新版蓝牙驱动没有电源管理问题
  13. 成功之路散文连载之笨人论
  14. 再见面试官:单例模式有几种写法?
  15. vue单文件组件中引用其他组件
  16. anchor译中文_anchor是什么意思中文翻译
  17. A-Level CS 计算机科学 考试知识点——考试介绍第1章
  18. hdu 1109 Run Away
  19. vue3+heightchart实现3D饼图,echarts3D饼图,3D饼图引导线实现
  20. mysql.connector 小结

热门文章

  1. oracle π,plsql 计算π
  2. C语言之预处理探究(四):#、##和预定义宏
  3. java deque.pop_Java - dequeue的介紹及用法
  4. win10锁定计算机会断网吗,Win10专业版如何设置锁屏后不断网?超详细的图文教程...
  5. html 格式化 vim,代码格式化插件
  6. 用python进行因式分解_python中怎么对一个数进行因式分解?
  7. 文科本二计算机类大学排名,全国二本大学排名文科分数线
  8. 序列复杂度怎么看_每日算法系列【LeetCode 376】摆动序列
  9. 实现 消息提醒图标_Mac 上自带的「提醒事项」千万别错过
  10. java环境怎么搭,如何搭建一个完整的Java开发环境