C语言中的COBOL到Java转换器#

C语言中的COBOL到Java转换器#,java,c#,cobol,Java,C#,Cobol,我的公司在我们的大型机上使用了很多COBOL,现在我们有大量的离岸和离岸承包商,他们都是Java开发人员,但不知道任何COBOL,这对我们的大型机人员来说恰恰相反,可能会导致通信错误。现在我碰巧知道COBOL、Java、C#等等。他们希望我编写一个命令行程序,接收文本文件或COBOL文件,并将输入转换成Java,以便双方都能更好地了解正在发生的事情。只要寻找一些关于如何开始的好参考资料,我想使用C#。我有一些基本的代码要在文件中阅读,但真的不确定我应该朝哪个方向去 我可以使用句点分隔字符串,然后

我的公司在我们的大型机上使用了很多COBOL,现在我们有大量的离岸和离岸承包商,他们都是Java开发人员,但不知道任何COBOL,这对我们的大型机人员来说恰恰相反,可能会导致通信错误。现在我碰巧知道COBOL、Java、C#等等。他们希望我编写一个命令行程序,接收文本文件或COBOL文件,并将输入转换成Java,以便双方都能更好地了解正在发生的事情。只要寻找一些关于如何开始的好参考资料,我想使用C#。我有一些基本的代码要在文件中阅读,但真的不确定我应该朝哪个方向去


我可以使用句点分隔字符串,然后查找单个关键字并从中继续解析,但必须有某种方法做得更好。

我担心编写这样的转换器不会让任何人对任何事情都有更好的了解(除了你,你会学到很多解析方面的知识)


机器翻译的代码非常混乱,很难阅读。Java人最好先阅读COBOL书籍,然后再阅读遗留代码。

Awww,祝你好运,你会需要它的。更严重的是:这两种语言真的很不一样——我不认为一个代码翻译能做好。这就是我担心的地方。@zmbq的答案就是我要走的路。但是,如果您坚持要进行转换,我建议使用正式的lexer/parser,如。当您遇到更复杂的语法时,将转换器拼凑在一起将很快成为一个泥潭。学习使用ANTLR这样的工具所花的时间在将来会有回报的。许多现代语言都可以使用ANTLR端口,包括Java和C#。我将与一些人交谈,希望他们会认为这是一件非常麻烦的事情,但同时我肯定会检查ANTLR。谢谢。这比你想象的要难多了。以强大的编译技术为基础构建这样一个工具是有帮助的;ANTLR是一个起点,但只解决问题的解析部分。看见只要付出足够的努力,就可以构建这样的转换工具;看见不过,我不会尝试使用这样的工具来帮助Java程序员理解COBOL;您最好简单地转换为Java并使用遗留的COBOL。我同意,使用这样的转换器来帮助Java程序员似乎不是一个特别好的主意。确实存在许多糟糕的翻译人员,他们会产生难看和混乱的代码。但是你不必使用这些(糟糕的)工具。翻译后的COBOL不必让人困惑。