I'd like to be able to export my Core Data entity to a CSV file, to save application's data. I googled but found nothing.
My app uses only one entity with five attributes. These attributes are all strings except one that is a decimal number (with a comma or a point). How can I export this entity with all the attributes?
You have to create a method to do this kind of operation, like this:
NSString *separator = @", ";
NSString *cvs = @"";
for (NSObject *object in arrayOfObject) {
cvs = [NSString stringWithFormat:@"%@%@%@%@%@\n", cvs, [object att1], separator, [object att2], separator, [object att3]...];
}
//If you want to store in a file the CVS
[cvs writeToFile:pathToFile atomically:YES];
I suggest you to try to avoid the "appending" system that I'm using, this kind of operation generate leaks in memory. Instead of a stringWithFormat that rewrite the same var, use this method that has been very well written: Shortcuts in Objective-C to concatenate NSStrings
You can also take a look at this library: https://github.com/davedelong/CHCSVParser I never used it, but it looks very helpful for write/read CVS files.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With