3

我正在开发一个应用程序,用户可以将 csv 文件上传到应用程序的文档文件夹(我完成了)。但我想在应用程序中为用户提供一个文本字段并要求他们输入一个 ID 号,这个数字将与上传的 csv 文件第一列一起检查。如果它匹配,则显示一个警报,说明它找到了匹配,否则它没有。

4

1 回答 1

1

我相信 csv 文件是具有逗号分隔列和换行符 (\n) 分隔行的文本文件。所以搜索每一行的第一列元素的一种方法是使用 NSString 的方法 componentsSeparatedByString:。

编辑:将 csv 文件加载到 NSString 实例中。

NSString * pstrCSVFilePath= [[NSBundle mainBundle] pathForResource:@"CSVFile" ofType:@""]
NSString * pstrCSVFile= [NSString stringWithContentsOfFile:pstrCSVFilePath encoding:NSASCIIStringEncoding error:NULL];

NSArray * paRowsOfCSVFile= [pstrCSVFile componentsSeparatedByString:@"\n"];
NSArray * paColumnsOfRow;
NSString * pstrFirstColumn;
for(NSString * pstrRow in paRowsOfCSVFile)
{
    paColumnsOfRow= [pstrRow componentsSeparatedByString:@","];
    pstrFirstColumn= [paColumnsOfRow objectAtIndex:0];
    if([pstrFirstColumn localizedCaseInsensitiveCompare:myTextField.text] == NSOrderedSame)
    {
         //Found the search string in the CSV file. 
         break;
    }
}
于 2012-08-28T22:34:26.197 回答