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

3

我一直在Stack Overflow上搜索如何在我的小应用程序中实现国际化支持...

我知道微软提供了“文化”类,但是你必须重新编译你的应用程序才能包含任何新添加的字符串。所以,我想做的就是将所有的字符串放在一个外部文件中,并为用户提供选择翻译应用程序而无需重新编译。

有没有简单的方法来处理这个问题?使用XML或类似INI的格式?是否有任何教程可用? P.S:我正在尝试在C#上完成这个操作...如果是其他语言,请不要打扰

2个回答

1

这里有一篇来自Scott Hanselman的不错的博客文章,其中包含了几个好资源: http://www.hanselman.com/blog/ASPNETInternationalizationGlobalizationAndLocalizationWhew.aspx

总的来说,我可以说你会想要将你的资源保持在二进制文件之外(使用类似于.resource文件的东西),这将允许你添加/编辑资源而无需重新编译。我自己没有做过太多,所以对整个事情有点生疏。

希望这有所帮助。


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网页工具包

CE解决方案


是的,我的意思是...如果你改变了一个字符串的翻译。 - Black Horus
[@Black Horus]:在这种情况下,外部资源文件可能是你最好的选择,它们可以单独编译。 - Steven A. Lowe

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接