【问题标题】:How do I output a certain array?如何输出某个数组?
【发布时间】:2013-10-10 17:22:03
【问题描述】:

Objective C 语言-->

我有 cvs 文件,我想将它读入 NSString 并创建数组,即:

姓名、州、价格、邮政编码

约翰,威斯康星州,20000, 43555 .. ..

#import <Foundation/Foundation.h>
#import <string.h>
int main(int argc, const char * argv[])

{
@autoreleasepool {
    //input user for a name on property list    
    int input;
NSLog(@"The worldcities.cvs contained infor on property names.");       
        NSLog(@"Enter a name: ");       
        scanf("%i", &input);

NSString *sourceFileString = [NSString stringWithContentsOfFile:[[NSBundle mainBundle] pathForResource:@"filename" ofType:@"worldcities.csv"] encoding:NSUTF8StringEncoding error:nil];

        NSMutableArray *csvArray = [[NSMutableArray alloc] init];
        csvArray = [[sourceFileString componentsSeparatedByString:@"\n"] mutableCopy];

        NSString *keysString = [csvArray objectAtIndex:0];

        NSArray *keysArray = [keysString componentsSeparatedByString:@","];

        [csvArray removeObjectAtIndex:0];

我希望能够根据来自 .cvs 文件的创建数组的用户输入输出属性名称,我将如何进行?

【问题讨论】:

  • 请解释您的问题??您需要什么输出?
  • 如何根据用户输入输出存储在 cvsArray 中的数组?

标签: objective-c arrays nsstring


【解决方案1】:

您可以创建一个核心数据结构并使用 .csv 文件中的信息填充它,而不是将其存储在数组中。然后,根据用户输入,您可以使用 NSPredicate 查询您需要输出的任何内容。

This 是关于使用 Core Data 以及使用预先存在的文件填充 Core Data 的非常好的教程。

【讨论】:

  • 这已经超出了我的联盟,我只需要存储在 NSArray 中并根据用户输入输出结果。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-03-29
  • 1970-01-01
相关资源
最近更新 更多