作者weakstudy (台湾高阶管理人)
看板java
标题[问题] 该如何让java和exe相互沟通?
时间Wed Jun 21 18:15:34 2017
请教各位前辈,
小弟想要让Java和Windows Exe相互交换资料,
现在情境:
小弟有二支Java程式A.java及B.java(均为专案),
均是用Java写成,
但是使用Jsmooth工具包成Exe,
所以现在是二个Exe执行档A.exe及B.exe,
问题为A.exe执行後有资讯要丢至B.exe,
小弟在A.java里写了它会回传一个HashMap<String, Object>(假设为data),
该如何在B.java里取用到它(data)呢?
(另外先提一声,此二专案不能互相引用,
所以也不知道该称为"java exe 沟通"还是"exe exe 沟通"?
另外也不考虑用资料库、档案或此类方法,谢谢!)
不知道各位能否指点一下呢?
小弟用关键字於google上均查不到相关资料,
不知道是否有什麽方法或是套件可以用呢?
谢谢大家!
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 220.133.40.236
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/java/M.1498040137.A.C56.html
1F:→ ssccg: 关键字 IPC 06/21 18:23
2F:→ ssccg: 最单纯的方法就是开个socket.. 06/21 18:27
3F:→ weakstudy: 回ssccg大,请问是软体或是套件吗? 06/21 18:35
4F:→ weakstudy: 在网上搜寻,结果…IPC入侵实例! 06/21 18:37
5F:→ weakstudy: = =" 06/21 18:37
6F:→ weakstudy: 另外深入点查询,好像是正解!但是 … 06/21 18:48
7F:→ weakstudy: 不知道把java用Smooth包成exe,那这个方法行的通吗? 06/21 18:48
8F:→ ssccg: 不管你包成什麽东西,你还是写java程式码吧? 06/21 21:20
9F:→ weakstudy: ssccg大大,是的 06/21 23:31
10F:→ weakstudy: 我查了一下,发现ipc方法还可以在不同程式间沟通 06/22 00:40
11F:→ weakstudy: 真是强大啊,只是想问一声,和Socket解法优缺点是…? 06/22 00:41
12F:→ ssccg: socket是IPC的一种方法... 只要在同电脑程式间沟通就叫IPC 06/22 09:16
13F:→ weakstudy: 谢谢ssccg大,了解! 06/22 09:56
14F:→ weakstudy: 但…有没有办法直接用Object来沟通呢? 06/22 11:43
15F:→ weakstudy: 但…有没有办法直接用Object来沟通呢? 06/22 11:44
16F:→ weakstudy: 贴错,程式语法上,要怎麽写呢? 06/22 11:44
17F:推 gmoz: 两个人还是得靠说话、书写、动作等才能互相沟通 06/22 14:36
18F:→ gmoz: 你没办法知道对方脑子在想什麽 两只.EXE也是同样道理 06/22 14:36
19F:→ gmoz: socket就是其中一种沟通方法 06/22 14:36
20F:推 gmoz: socket的写法、传递,你自己GOOGLE吧 有一大堆 06/22 14:39
21F:→ weakstudy: 目前想用RandomAccessFile+MappedByteBuffer来做, 06/22 15:36
22F:→ weakstudy: 目前卡在HashMap<String, Object>无法getBytes … 06/22 15:38
23F:→ weakstudy: 啊 … 想不出来啊 … 救人啊 … 06/22 15:38
24F:→ weakstudy: 网路上全部都是用"字串" … 06/22 15:43
25F:→ weakstudy: 可是小弟的资料不是只有数字,字串这麽简单的啊 ~~~ 06/22 15:44
26F:→ weakstudy: 可以用Object来沟通吗? 怎麽没看到例子啊? = = 06/22 15:44
27F:→ ssccg: 不可以,物件是JVM管理的记忆体内的表示方式,离开就没了 06/22 16:06
28F:→ ssccg: 要传出去要序列化(把Object转成某种binary表示法),当然有 06/22 16:07
29F:→ ssccg: 很多library把这段包装起来,可以把IPC用起来像呼叫方法 06/22 16:09
30F:→ weakstudy: ssccg大,可以说一下是那些套件吗? 06/22 16:25
31F:→ weakstudy: 或是有什麽关键字提示呢? 06/22 16:27
32F:推 Jasonzheng: 多 google 吧... ss 讲的都关键字 06/22 19:38
33F:→ Jasonzheng: 推文看的懂的话 应该没什麽问题才是0.0 06/22 19:40
34F:推 Jasonzheng: 最简单就 Data 实做 Serializable,并用 ObjectOutput 06/22 19:43
35F:→ Jasonzheng: Stream 06/22 19:43
36F:推 gmoz: json 06/22 21:23
37F:→ gmoz: 差点打成jason.. 06/22 21:24
38F:→ ssccg: 用方法呼叫的通常叫RPC,是说不管IPC还RPC应该都很好找到一 06/23 00:04
39F:→ ssccg: 堆吧...没什麽更关键的关键字了,再来就直接套件名字了 06/23 00:08
40F:→ weakstudy: 谢谢各位的教导,谢谢! 06/23 09:20
41F:→ Jasonzheng: 哈罗 g 大,jason 来惹 xd 06/23 17:39
42F:推 Nt1: protocol buffer? 06/25 19:06