Using iOS SDK to create a plist at runtime?

后端 未结 3 734
再見小時候
再見小時候 2021-02-06 17:59

I am new to iPhone development. I want to know if there is any sample Objective-C code to create a plist at runtimeby getting data from a webserver and I want to know what the f

相关标签:
3条回答
  • Plist files are mainly used by Mac OS X to store serialized objects in a key/value manner. There are multiple kinds of Property List files; ASCII, XML and Binary.So in your case your server should send the data in xml format.After receiving the data from server you can generate plist at runtime. You can use the below code to write data in .plist file.

    - (void)writeToPlist{
    NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
    NSString *documentsDirectory = [paths objectAtIndex:0];
    NSString *filePath = [documentsDirectory stringByAppendingPathComponent:@"WebData.plist"];
    NSArray *dataToSave = [dataToSave writeToFile:filePath atomically:YES];
    }
    

    Please refer this and these links for server side also link1 link2 link3 link4.

    0 讨论(0)
  • 2021-02-06 18:15
    // Get the full path of file in NSDocuments 
    NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
    NSString *documentsDirectory = [paths objectAtIndex:0];
    NSString *filePath = [documentsDirectory stringByAppendingPathComponent:@"MyData.plist"];
    
    // Save data to file
    NSArray *dataToSave = /* put data in it */;
    [dataToSave writeToFile:filePath atomically:YES];
    
    0 讨论(0)
  • 2021-02-06 18:25

    Very simple with a NSDictionary:

    #define DOCUMENTS_PATH [NSSearchPathForDirectoriesInDomains(NSDocumentsDirectory, NSUserDomainMask, YES) objectAtIndex:0]
    
    NSDictionary *myDictionary = [self parseWebResult];
    
    // note that myDictionary must only contain values of string, 
    // int, bool, array (once again containing only the same types), 
    // and other primitive types (I believe NSDates are valid too).
    [myDictionary writeToFile:[DOCUMENTS_PATH stringByAppendingPathComponent:@"myDict.plist"] atomically:YES];
    
    // reading in the dictionary
    myDictionary = [NSDictionary dictionaryWithContentsOfFile:[DOCUMENTS_PATH stringByAppendingPathComponent:@"myDict.plist"]];
    
    0 讨论(0)
提交回复
热议问题