将c#转换为纯java?

时间:2011-01-25 13:51:55

标签: c# java .net android cross-platform

  

可能重复:
  is there an effective tool to convert c# to java?

我对Java不是很有经验,并且有很多我希望转换成Java语法的C#,因此它可以编译。

原因:Android和Google Cloud

我知道API /平台有不同的结构,但我们可以说我们不需要100%的兼容性,而只是为了翻译“核心功能”。正如我所了解的那样,GUI本身就是它自己的一个故事。但是不是重写每个SWITCH-CASE,而是重建每个类等等。将对象“映射”到Java等于然后在Android / Google平台上重新编译会很好。

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

有没有简单的方法可以通过Frameworks,SDK或其他类似的方法来自动完成80-95%的任务?

3 个答案:

答案 0 :(得分:1)

看看这里:JSC

但除此之外,还有一些c#概念不会将easyli转换为java。

答案 1 :(得分:0)

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

C#和Java之间的区别不仅仅是“结构”,而且从一种语言到另一种语言的翻译比我想象的要复杂得多。

答案 2 :(得分:0)

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

C#还具有Java中根本不支持的数据类型,例如无符号类型和堆栈分配对象。将CLR的翻译写入Java字节码确实很困难。如果你在代码中使用lambda函数,请亲吻这个想法。

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

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

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