处理多语言支持的最佳方法?

时间:2020-03-06 14:44:04  来源:igfitidea点击:

我一直在寻找如何在我的小应用程序上提供i18n支持的方法...

我知道Microsoft提供了"文化"类,但是我们必须重新编译应用程序以包括我们添加的任何新字符串。因此,我要做的就是将我所有的字符串都放在一个外部文件中,并为用户提供无需重新编译就可以翻译应用程序的选择。

有一个简单的方法来解决这个问题吗?使用XML还是类似INI的?有可用的教程吗?
P.S:尝试在C#上执行此操作...如果其他语言也不要打扰

解决方案

如果我们在应用程序中包含新字符串,则无论如何都必须重新编译它,不是吗?

如果我们经常添加语言,则资源文件和/或者附属DLL可能是最佳选择

否则,我们可以编写自己的提供程序。以下是一些我认为有用的链接,里程可能会有所不同:

http://en.csharp-online.net/Localization_Like_the_Pros

http://www.devhood.com/tutorials/tutorial_details.aspx?tutorial_id=211

http://www.codeproject.com/KB/aspnet/DeclarativeGlobalization.aspx

网页的MS工具包

CE解决方案

这是Scott Hanselman的一篇不错的博客文章,其中包含一些不错的资源:
http://www.hanselman.com/blog/ASPNETInternationalizationGlobalizationAndLocalizationWhew.aspx

一般而言,我可以说我们希望将资源保留在二进制文件的外部(使用.resource文件之类的东西),这将使我们无需重新编译即可添加/编辑资源。我自己并没有做太多事情,所以整个事情我都有些生疏。

希望这会有所帮助。