将数据从NSArray写入Excel文件?

时间:2011-01-19 07:18:51

标签: iphone objective-c nsarray

我想将数组中存在的所有值写入excel表。请提供一些方法。

3 个答案:

答案 0 :(得分:2)

将值写入CSV文件,将CSV导入Excel。

答案 1 :(得分:1)

您有几个选择:

  1. 像@Jonah建议的那样(因为你没有细节,我投了他的答案!)
  2. MS Office XML Formats研究XML交换格式并使用NSXML ...对象和方法
  3. 取决于你想要完成的是什么

答案 2 :(得分:0)

我将更详细地解释将值写入CSV文件。 例如,您有一个Numbers数组:         NSArray * array = @ [@ 1,@ 2,@ 3,@ 1.01];

在这种情况下,您的csv文件将如下所示(通常的文本文件,每个字符串上都有一个数字):

1
2
3
1.01

所以第一步是写一个CSV文件:

    // composing a string with numbers from array separated by "\n" (line-endian symbol)
    NSString *string = [array componentsJoinedByString:@"\n"];
    // getting data from resulting string
    NSData *data = [string dataUsingEncoding:NSUTF8StringEncoding];
    // and writting data to disk
    NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
    NSString *documentsDirectory = [paths objectAtIndex:0];
    NSString *appFile = [documentsDirectory stringByAppendingPathComponent:@"yourFileName.csv"];
    [data writeToFile:appFile atomically:YES];

,最后一步是将CSV导入Excel (只需用Excel应用程序打开“yourFileName.csv”,然后单击“确定”。)

但是如果你想直接在XLS文件中保存数组(不导入CSV格式),你可能必须先阅读这个问题的第一个答案:iPhone SDK - Export data to XLS (not via CSV)