MonoTouch比较字符串
问题描述:
我有一个应用程序列出了很多语言。在应用程序中,我比较语言名称。MonoTouch比较字符串
当我比较没有口音的语言名称时,它的工作原理和比较是正确的。
当我比较语言与口音,它不认为他们是平等的。
在这种情况下,他们是不相等的(但应该是)。
Language = "Español";
MonoTouch.Foundation.NSString s = new MonoTouch.Foundation.NSString(Language);
MonoTouch.Foundation.NSString l = new MonoTouch.Foundation.NSString ("Español");
在这个例子中他们是平等的(通知没有口音)。
Language = "Deutsch";
MonoTouch.Foundation.NSString s = new MonoTouch.Foundation.NSString(Language);
MonoTouch.Foundation.NSString l = new MonoTouch.Foundation.NSString ("Deutsch");
我试过cultureinvariate比较无济于事。
我在这里错过了什么?
我使用MonoTouch的1.4.4
答
下面的比赛,你需要忽略口音:
var Language = "Español" ;
MonoTouch.Foundation.NSString s = new MonoTouch.Foundation.NSString(Language);
MonoTouch.Foundation.NSString l = new MonoTouch.Foundation.NSString ("Español");
int result = String.Compare(s,l, CultureInfo.CurrentCulture, CompareOptions.IgnoreNonSpace);
哪里是你的实际代码确实比较? – AnthonyLambert 2010-02-02 10:19:18
if(s == l){....}这在Visual Studio中的.NET中起作用,但在MonoTouch中不起作用,这使我认为它可能是一个错误。 – 2010-02-03 13:54:30