我有一个用我的母语(hun)用Visual 2012用c#编写的大型项目。
我想把它翻译成英语。
当然,如果我得到匈牙利语文本,我可以翻译它,所以重点不是如何翻译一篇文章,而是如何使整个翻译更容易。我不需要软件来改变语言在运行时,它也是可以的,如果我得到一个不同的项目与不同的语言。一种方法是完成整个项目并更改所有标签,但这是一项很大的工作,因为我修改了整个项目,所以我不得不重新做一遍。
我编写了另一个程序,它可以找到标记为“.”的标签。在项目文件(如'Form1.cs‘等)中,我可以翻译这些文件。这有很多错误。例如,Visual分割长文本,所以我分离了这些字符串,所以在完成整个翻译之后,仍然需要做大量的工作。
另一个想法是用数组替换所有的字符串,比如代替写"Cancel“、写t201或类似的东西,然后我只能翻译t变量。但这也是大量的工作,如果我在文本中包含一个变量,就会有一个问题。
举个例子,在匈牙利语中,我可能会写“2 masodperc maradt”,但我应该把它翻译成“剩余的秒:2”,或者类似的东西。然后我必须考虑包含的变量。
那么,您认为最简单的方法是进行翻译,其他程序员是如何做到这一点的?
为了获得更好的效果,TotalCommander在一秒钟内改变了语言,而不需要重新启动或其他任何东西。
发布于 2013-06-18 13:53:12
.Net中正在使用resx文件进行构建。
有很多工具可以帮助基于.Net本地化的翻译,但是您也可以直接在VS中完成。
能够动态更改翻译的.Net应用程序通常使用定制的国际化,例如加载文本文件和刷新GUI。
如果您想自己做类似的事情,请注意,您还必须调整控件的大小,以使文本适合。
对于您的问题,可以使用类似的string.Format。
要了解所有的可能性,特别是使用VS进行翻译,您确实应该阅读MSDN库文章。如果你错过了什么,翻译就会变得很麻烦。
https://stackoverflow.com/questions/17170102
复制相似问题