On May 19, 2011, at 21:53, Rick Mann wrote:
> But frankly, that's a kludge. Cocoa is full of inconsistencies (like
> NSFileManager/NSFileHandle lacking modern file creation methods) forcing the
> (ab)use of another API. Sure, it works (I'm guessing), but it's ugly.
It's in the eye of the beholder. From where I'm standing, it's deeply
consistent -- NSData is my go-to class for writing N bytes of arbitrary data to
a file. Why is N==0 an abuse?
Also, if I create a mutable data object:
NSMutableData* dataBuffer = [NSMutableData data];
then I can use it to create the file and then re-use it as the data buffer I
need to pass to [NSFileHandle writeData:].
With this technique, I've reduced the number of lines of boring housekeeping
code needed to create the file and set up a data buffer I wanted anyway.
Concision is good.
With this technique, I've abstracted my task -- writing data bytes to a file in
one or more pieces -- away from a series of lower level tasks (interacting with
a file system) that have no particular interest. Abstraction is good.
Finally, you don't have to guess that it works. It's a line of code I've used
many times. When posting code here to save you a little time and effort, I
wouldn't waste your time suggesting doubtful code.
_______________________________________________
Cocoa-dev mailing list ([email protected])
Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com
Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com
This email sent to [email protected]