2011-01-25 92 views
4

可能重复:
is there an effective tool to convert c# to java?将c#转换为纯java?

我不是很有经验的Java和有很多的C#,我想转换成Java的语法,因此它会成为编译。

原因:Android和谷歌云

我知道API /平台有不同的结构,但可以说我们不需要100%保持兼容,但只是为了得到“核心functionalitet”翻译。据我了解,GUI本身就是一个故事。但不是重写每个SWITCH-CASE,而是重新编译每个类等,将这些对象“映射”到Java equals然后在Android/Google平台上进行重新编译会很好。

我确定会有一些东西不能被翻译成它的“C#唯一的东西” - 但就像每种语言都可以生成.NET/MONO我认为可能有Java - > .Net也可用因此也是一个反编译器有点儿东西?

那么是否有任何简单的方法可以通过Frameworks,SDK或其他类似方法来克服这种转换,这些方法将自动执行80-95%的任务?

+0

dang!为什么我找不到,因为我做了。 – BerggreenDK 2011-01-25 14:01:26

+0

在提到的线程后也发现了这个:https://net2java.dev.java.net/ – BerggreenDK 2011-01-25 14:05:15

回答

1

看看这里:JSC

但是旁边,有一些c#的概念,不easyli翻译成java。

+0

https://net2java.dev.java.net/也看起来很有趣 – BerggreenDK 2011-01-25 14:12:26

0

.NET和Mono是兼容的,因为它们都是运行C#代码的VM。 Grasshopper声称允许您在JVM上运行.NET类,但我没有使用它。它完全不适用于Android,因为Android不是JVM,而是Dalvik

C#和Java之间的差异不仅仅是“结构性”,而且从一种语言到另一种语言的翻译比我认为你理解的要复杂得多。

+0

我并不是说这些语言是平等的,但是希望尽可能地重用,并专注于“最后的零碎”。所以我们可以在Java中做20%的调整代码,其余部分将被转换。但我可能是错的。 – BerggreenDK 2011-01-25 14:07:11

0

我知道微软有一个工具可以帮助将Java转换为C#,但考虑到主系统之外有很多Java应用程序参考库(apache是​​最突出的例子),这种类型的工具将是一个巨大的任务。

C#也具有完全不受Java支持的数据类型,例如无符号类型和堆栈分配对象。编写从CLR到Java字节码的翻译确实很难。如果您在代码中使用lambda函数,请亲吻这个想法。

然后,事实上并非所有的Java语言功能都可用于Davlik JVM。

我不是微软的粉丝,但是这里有两种语言的比较,可以让你知道为什么我怀疑这个工具存在。

http://en.wikipedia.org/wiki/Comparison_of_C_Sharp_and_Java