0

在我的应用程序中,我正在尝试导入 csv 文件,如下所示:

NSError *error;
    NSString *path1=[[NSString alloc]initWithContentsOfFile:CSVPath encoding:NSUTF8StringEncoding error:&error];
    NSLog(@"%@",path1);
    NSArray *messArr=[path1 componentsSeparatedByString:@"\n"];
    NSLog(@"%@",messArr);

问题: 当我尝试记录数组时,它会给出带有许多空格的最后一列值,如下所示:

路径 1:学生姓名、性别、电子邮件 ID

test1,男,a

测试2,男性,b

测试3,男性3,c

混乱:

(“学生姓名,性别,email_id

",

"test1,male,a

",

"test2,male,b

",

"test3,male3,c"

)

在这里,我得到的计数是 4,但无法删除空格。

所以,我无法从 messArr 中删除空格。为什么会这样?我不知道。帮我解决这个问题。

我认为您在创建 csv 文件时使用的编码方案存在问题。

谢谢,

4

3 回答 3

1

请使用 Github 存储库中提供的 CSV Parser。

对 Objective-C 使用 CSV 解析器

谢谢,

于 2013-06-27T05:03:16.267 回答
0

你可以删除空格

通过在messier的每个对象上使用这个meted

NSString *str=[[messArr objectAtIndex:index] stringByTrimmingCharactersInSet: whitespaceAndNewlineCharacterSet];

将此 str 用于您的目的。

于 2013-06-11T05:05:38.773 回答
0

我认为这是因为\n。如果您不想要它,请删除此行

NSArray *messArr=[path1 componentsSeparatedByString:@"\n"];

用于在循环中显示行迭代数组,并在代码中for硬编码\n

for(int i=0; i<[messArr count];i++)
{
NSLog(@"%@\n",[messArr objectAtindex:i]);
}
于 2013-06-11T04:55:28.857 回答