iPhone应用-将json数组转换为电子邮件附件



我正在制作一个iPhone应用程序,在数据库上运行查询,并将结果显示给用户,理想情况下,我希望有选项通过电子邮件发送这些结果一旦显示

我正在使用json数组。从我在网上看到的内容来看,我认为我必须首先将其转换为CSV文件,然后将其附加在电子邮件中。然后,用户应该能够从他或她的电子邮件中下载文件并在excel中打开它。

我该如何完成这项任务?我是否需要为转换做一个API,或者我可以在xcode上做这件事?我在这方面仍然是新的,并将感谢有关过程的任何细节。

    你可以在Xcode中将Json转换为Csv
  • 如果你的json (NSDictionary)键在你的数组中是相同的,它很容易像下面这样做。

     NSArray *keys = [self.dictionary allKeys];
     // -- you need to sort the keys first because the index order is not identical every time in nsdictionary.
     NSArray *sortedKeys = [keys sortedArrayUsingSelector:@selector(compare:)];
     NSMutableString *large_CSV_String = [[NSMutableString alloc] initWithFormat:@"%@",[sortedKeys objectAtIndex:0];
     for(int i = 1; i<[sortedKeys count]; i++){
     [large_CSV_String appendFormat:@",%@",[sortedKeys objectAtIndex:i]];
     }
     [large_CSV_String appendFormat:@"n"];
    
  • 假设下面的jsonArray由具有上述键的nsdictionary对象组成

    // -- your array object NSArray *jsonArray 
    
    for (NSDictionary *ajsonObject in jsonArray){
     [large_CSV_String appendFormat:@"%@",[ajsonObject objectForKey:[sortedKeys objectAtIndex:0]]];
     for(int i = 1; i<[sortedKeys count]; i++){
     [large_CSV_String appendFormat:@",%@",[ajsonObject objectForKey:[sortedKeys objectAtIndex:i]]];
     }
     [large_CSV_String appendFormat:@"n"];
    }
    

    //——最后你会得到一个CSV字符串

    //——你可以NSLog这个值并查看

    //——将此字符串保存为csv格式,并在电子邮件中附加。

    //——我没有我上次写的确切的代码,我写这篇文章有一点内存。

相关内容

  • 没有找到相关文章

最新更新