gpt4 book ai didi

java - 在 C# 和可执行 JAR 之间交换数据的最佳方式

转载 作者:行者123 更新时间:2023-12-01 12:31:56 25 4
gpt4 key购买 nike

我正在使用 EXI,它将 XML 编码为二进制格式并返回。

为此,我使用开源 JAVA 工具 ExiProcessor,它是一个可执行 JAR 文件,使此过程非常简单。由于我想将它与 C# 一起使用,因此我需要在两者之间交换数据。

最简单的方法是将 XML 数据从 C# 写入文件,使用 ExiProcessor 读取该文件,然后反之亦然。但这并不是很快。

因此我想知道还有什么替代方案。我读到,从 .NET Framework 4 开始,您可以使用 MemoryMappedFiles。我看了一下,但似乎它们只能在两个使用 .NET Framework 4 的应用程序之间工作?

还有其他方法可以加快该过程吗?

作为后备方案,我可以使用 JAVA 源代码并编写自己的应用程序,但我更愿意按原样使用 ExiProcessor

最佳答案

对于像这样的混合环境,Apache Thrift通常是一个不错的选择。 Thrift 专为轻量级、快速且易于使用的 RPC(和 IPC)解决方案而设计。其中,它支持 Java 和 C#。也许值得一瞧。

如果您想坚持使用 MMF,也可以通过仅使用 Thrift 的序列化部分并从缓冲区或流读取/写入数据来实现。您不必使用 RPC 的东西。

查看 this question获取更详尽的概述以及一些可帮助您快速入门的其他资源的链接。

关于java - 在 C# 和可执行 JAR 之间交换数据的最佳方式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25864831/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com