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

时间:2008-09-25 17:13:25

标签: c# internationalization

我一直在搜索如何在我的小应用程序上支持i18n ...

我知道Microsoft提供'culture'类,但您必须重新编译您的应用程序以包含您添加的任何新字符串。因此,我所要做的就是将所有字符串放在外部文件中,并为用户提供翻译应用程序的选择,而无需重新编译。

有一种简单的方法可以解决这个问题吗?使用XML,还是INI?任何教程可用吗? P.S:尝试在C#上做这个...如果其他语言不打扰

2 个答案:

答案 0 :(得分:1)

以下是来自Scott Hanselman的精彩博文,其中包含几个不错的资源: http://www.hanselman.com/blog/ASPNETInternationalizationGlobalizationAndLocalizationWhew.aspx

一般来说,我可以说您希望将资源保存在二进制文件外部(使用.resource文件之类的东西),这样您就可以在不重新编译的情况下添加/编辑资源。我自己做得不多,所以整个事情我都有点生气。

希望这有用。

答案 1 :(得分:0)

如果你在你的应用程序中包含一个新字符串,你必须重新编译它,不是吗?

如果您经常添加语言,资源文件和/或附属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 toolkit for web pages

CE solution