有没有一个有效的工具将C#代码转换为Java代码? [重复]

问题描述 投票:83回答:14

这个问题在这里已有答案:

有没有一个有效的工具将C#代码转换为Java代码?

java c# code-translation
14个回答
44
投票

我从未遇到过C# - > Java转换工具。语法很简单,但框架却截然不同。即使有工具,我也会强烈反对。我曾经参与过几个“迁移”项目,并且不能说明转换似乎是一个不错的选择,转换项目总是总是转向金钱坑。它不是捷径,你最终得到的代码是不可读的,并没有利用目标语言。从个人经验来讲,假设重写是更便宜的选择。


1
投票

我不确定你想要将C#转换为java,你想要做什么,但如果它是你需要的.net互操作性,你可能想看看Mono


1
投票

这是袖口,但不是Grasshopper的用途?


1
投票

那么语法几乎相同,但它们依赖于不同的框架,所以转换的唯一方法是让一个知道两种语言并转换代码的人:)你的问题的答案是没有没有“有效”的工具来转换c#到java


1
投票

可能你可以使用jni4net - opensource bridge代替?或者我知道的other options列表。


-1
投票

为什么不把它写在Haxe(http://haxe.org/)中并将其转换为你想要的任何东西?


28
投票

我们需要在C#和Java中维护一个应用程序。由于我们积极维护此产品,因此不能选择一次性端口。我们调查了Net2Java和Mainsoft工具,但都没有达到我们的要求(Net2Java缺乏稳健性,Mainsoft因为成本和源代码转换不足)。我们创建了自己的工具CS2J,它作为我们每晚构建脚本的一部分运行,并为Java提供了一个非常有效的C#代码端口。现在,它恰好足以翻译我们的应用程序,但在被视为一个综合工具之前还有很长的路要走。我们已经将这项技术授权给了一些有类似需求的政党,我们正在努力将其公开发布,但我们的核心业务让我们现在太忙了。


8
投票

这篇博客post提出了Tangible的有用结果。


6
投票

微软有一个工具将java转换为C#。相反的方向看看herehere。如果这不起作用,手动转换源不需要太长时间,因为C#和java非常相似,


5
投票

虽然这是一个古老的问题,但是看看xmlVM http://www.xmlvm.org/clr2jvm,我不确定它是否已经足够成熟,尽管它已经存在了好几年了。我相信,XMLvm主要用于将Android Java应用程序转换为iPhone,但是,基于XML代码转换的框架足够灵活,可以进行其他组合(参见网站上的图表)。

至于做这种转换的原因,可能需要“劫持”一些highly abundant oss code并在他/他们自己的[Java]项目中使用它。

干杯

丰富


4
投票

试着看看Net2Java在我看来,从C#到Java的自动(或至少半自动)转换的最佳选择


3
投票

它们不直接转换,但它允许.NET和J2EE之间的互操作性。

http://www.mainsoft.com/products/index.aspx


3
投票

C#还有一些比Java更多的功能。以代表为例:许多非常简单的C#应用​​程序使用委托,而Java人员认为观察者模式已足够。因此,为了使工具转换使用委托的C#应用​​程序,它必须将结构从使用委托转换为观察者模式的实现。另一个问题是,当Java方法时,C#方法默认不是虚拟的。此外,Java没有办法使方法非虚拟。这就产生了另一个问题:C#中的应用程序可以通过多态来利用非虚方法行为,而不会直接转换为Java。如果你环顾四周,你可能会发现有很多工具可以将Java转换为C#,因为它是一种更简单的语言(请不要激怒我,我没说更糟,我说的更简单);但是,如果有任何可以将C#转换为Java的好工具,你会发现很少。

我建议改变你从Java转换到C#的方法,因为从长远来看它会减少麻烦。 Db4Objects最近发布了他们用于将Db4o转换为C#的公共内部工具。它被称为锐化。如果您在他们的网站上注册,您可以查看此链接以及如何使用Sharpen:http://developer.db4o.com/Resources/view.aspx/Reference/Sharpen/How_To_Setup_Sharpen的说明

(我已经和他们一起注册了一段时间,他们很好不会发送垃圾邮件)


3
投票

These家伙似乎有一个解决方案,但我还没有尝试过。他们还有转换器的演示版本。

© www.soinside.com 2019 - 2024. All rights reserved.