我正在使用sqlite数据库。 我从sqlite数据库检索文本数据到名为myArray的NSMutableArray。 在那个myArray变量中,有一列名为“info”的文本数据。 之后我找回数据到NSMutableArray里,我想所有的文本数据转换的从SQLite数据库为小写。 我在searchBar的textDidChange事件中编写了如下代码。如何在iOS中将NSMutableArray对象的NSString数据转换为小写字母?
NSInteger counter = 0;
for(NSString *nameMe in myArray)
{
NSRange r = [[nameMe lowercaseString] rangeOfString:[searchText lowercaseString]];
if(r.location != NSNotFound)
{
if(r.location== 0)
{
[tableData addObject:nameMe];
}
}
counter++;
}
但是,在lowercaseString中发生错误。
此错误是
2012-03-31 16:28:18.217 SqliteTest[1812:f803] -[MyInfoClass lowercaseString]: unrecognized selector sent to instance 0x6da9210
2012-03-31 16:28:18.276 SqliteTest[1812:f803] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[MyInfoClass lowercaseString]: unrecognized selector sent to instance 0x6da9210'
我觉得编译器不知道如何对象数据转换为小写。 我该如何解决这个问题? 我可以将对象(NSString)数据转换为小写。 如果可以,请让我知道如何做到这一点。 感谢您的帮助。
你肯定myArray的包含NSString对象?你是如何初始化myArray的?请添加它的定义,并明确地显示在哪里行1812 – giorashc 2012-03-31 10:28:44
我相信myArray包含NSString对象。我在viewDidLoad中初始化事件类似的“self.myArray = [MyInfo的getInitialData];” – 2012-03-31 10:33:37
,我和搜索栏的搜索文本。它只与casesenstative匹配。如果我的数据库中的数据是“苹果”,我无法用苹果搜索这些数据。所以我用大写字母输入了所有的字符。那是我的问题。请帮忙。 – 2012-03-31 10:35:48