iphone - 将 plist 转换为 CSV 文件?

标签 iphone database csv plist

我有一个包含数组和字典的 .plist 文件。我想将其转换为 CSV 文件,以便我可以将其在线上传到数据库。有谁知道执行此操作的简单方法?

最佳答案

看下面的代码

  NSString* plistPath = [[NSBundle mainBundle] pathForResource:@"test" ofType:@"plist"];
    NSArray *commentArray = [NSArray arrayWithContentsOfFile:plistPath];

    NSMutableString *mainString=[[NSMutableString alloc]initWithString:@""];
    for(int i=0;i<[commentArray count];i++ ) {
        NSString *string=[[commentArray objectAtIndex:i]objectForKey:@"cmtName"]; 
        string=[string stringByReplacingOccurrencesOfString:@"\"" withString:@"\"\""];
        [mainString appendFormat:@"\"%@\"",string];

        string=[[commentArray objectAtIndex:i]objectForKey:@"cmtDesc"];  
        string=[string stringByReplacingOccurrencesOfString:@"\"" withString:@"\"\""];
        [mainString appendFormat:@",\"%@\"",string];

        string=[[commentArray objectAtIndex:i]objectForKey:@"cmtType"];
        string=[string stringByReplacingOccurrencesOfString:@"\"" withString:@"\"\""];
        [mainString appendFormat:@",\"%@\"",string];

        [mainString appendFormat:@",\"%@\"",string];
        [mainString appendFormat:@"\n"];
     }


NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,  NSUserDomainMask, YES);
NSString *documentsDirectoryPath = [paths objectAtIndex:0];
NSString *filePath = [documentsDirectoryPath  stringByAppendingPathComponent:@"Docment.conf"];


NSData* settingsData;
settingsData = [mainString dataUsingEncoding: NSASCIIStringEncoding];

if ([settingsData writeToFile:filePath atomically:YES])
    NSLog(@"writeok");

您还可以使用 https://github.com/davedelong/CHCSVParser用于生成 CSV。

关于iphone - 将 plist 转换为 CSV 文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8396179/

相关文章:

python - 将 Beautiful Soup 表抓取结果导出到 CSV

ios - 关于 MKMapView -regionThatFits :? 的 Apple 文档不正确

ios - 如果状态栏不可见,检索当前界面方向是否可靠?

iphone - 如何在核心数据中使用 NSPredicate 从属性之一获取值

database - Elasticsearch 唯一字段

python - 导出 CSV 文件中的表格

powershell - 如何使用 Powershell 从 .Csv 文件中获取一行信息?

iphone - 需要在特定的几秒钟内在 App Delegate 中显示一个特定的 View

MySQL - 返回当前日期介于开始日期和结束日期之间的行

database - 数据库表规范化(2NF)困难